- 博客(12)
- 资源 (5)
- 收藏
- 关注
原创 【无标题】
摘要: Newton VBD算法是一种基于图着色并行化的隐式时间积分求解器,通过将全局优化问题分解为顶点/刚体的独立子问题实现高效求解。核心流程包括:1) 建模阶段完成图着色;2) 初始化阶段构建邻接信息与碰撞检测器;3) 仿真主循环中,每步执行三阶段处理:初始化(前向积分、碰撞检测)、迭代求解(分颜色组并行处理刚体6x6系统和粒子3x3系统)、终结阶段更新状态。该算法支持粒子弹性、刚体动力学及复杂碰撞处理,相关实现详见SolverVBD类及内核文件。
2026-05-11 12:29:38
276
原创 【newton开发文档】api/newton_solvers
求解器(Solvers)用于对 Newton 模型进行动力学积分。典型工作流程是:先构造一个Model与一个State对象,然后使用求解器通过step()方法将状态向前推进一步(在时间上推进)。典型工作流(Mermaid 示意图):fill:#333;important;important;fill:none;color:#333;color:#333;important;fill:none;fill:#333;height:1em;输出数据输入数据时间步长 dt。
2026-04-18 22:33:01
254
翻译 NEWTON 物理引擎学习 - 4 - 关节
数组存储模型中所有关节的默认广义关节位置,用于初始化。这两个数组共享相同的按关节布局。# 现在可以查询位置坐标:q0 = q[0]q1 = q[1]数组存储模型中所有关节的默认广义关节速度,用于初始化。中的广义关节力也使用相同的自由度顺序。若干其他数组也使用这种按自由度排序的布局,其索引从开始,而不是。;通过定义的关节限位以及其他按自由度属性;中的位置目标。对于每个关节,这些按自由度的数组是连续存储的,先线性自由度,后角度自由度。可以使用查询一个关节有多少线性与角度自由度。
2026-03-17 20:31:02
46
翻译 NEWTON 物理引擎学习 -- 3 -- world
Newton 中的 GPU 加速操作通常会对整个模型实体集合(例如 bodies、shapes 或 joints)进行并行,而无需关心它们具体属于哪个 world。然而,某些操作(例如碰撞检测中的部分操作)可以利用基于 world 的分组,有效过滤掉属于不同 worlds 的 shapes 之间的潜在碰撞。此外,基于 world 的分组也有助于按照 world 索引以及每个 world 中的实体数量来划分线程网格(thread grid)。这类操作使得在一个Model。
2026-03-17 20:25:05
50
原创 vulkan里的Memory Barrier`和 Semaphore
内存屏障提供了细粒度的控制,适合在同一队列内短时间内的同步操作,确保数据在各个阶段的正确性。信号量提供了粗粒度的控制,适合跨队列或者跨命令缓冲区的同步操作,可以高效地协调复杂的任务调度和数据传递。
2024-07-02 23:10:34
1038
原创 vulkan uniform、推送常量、特化常量概念和用法
概念是一块存储在GPU上的内存区域,可以在多个着色器(甚至多个着色器阶段)之间共享一致的数据。可以容纳大量数据,可用于传递长生命周期的全局常量数据。用法1.1.在GLSL中定义Uniform Buffer} ubo;1.2.在Vulkan中创建Uniform Buffer1.3.绑定Uniform Buffer到Descriptor Set适用场景大量需要频繁更新但生命周期较长的数据(例如:相机矩阵,光源信息)。
2024-07-01 23:18:38
2389
原创 内存屏障(Barrier)设置
通常会设置多次屏障(Barrier),每次屏障都有其特定的目的,以确保计算操作和队列传递之间的正确同步和数据完整性。
2024-07-01 22:52:02
1857
原创 使用条带(Triangle Strip)来绘制网格
通过这种推入索引方式,我们有效地定义了一个三角形条带,减少了冗余,优化了顶点缓存,并保持了网格连接的连续性。
2024-06-23 20:48:22
683
1
原创 Vulkan中的`Shader Module`和`Shader Stage`
Shader(着色器)是运行在GPU上的小程序,用来执行图形计算或通用计算任务。根据用途不同,有多种类型的Shader,比如顶点着色器(Vertex Shader)、片段着色器(Fragment Shader)、计算着色器(Compute Shader)等。Shader Stage是指GPU在进行渲染或计算过程中所处的具体阶段。每个阶段都有特定类型的着色器来处理数据。(顶点阶段)、(片段阶段)、(计算阶段)等等。
2024-06-12 19:48:07
807
原创 vulkan计算管线描述符集创建
首先定义描述符布局,描述符布局将设定每个绑定点及其对应的描述符类型和数量。这里假设Set 0, Binding 0有三个UNIFORM_BUFFER描述符,Set 0, Binding 1有三个STORAGE_BUFFER描述符,Set 1, Binding 0有四个STORAGE_BUFFER描述符。");");
2024-06-10 22:40:59
365
pyserial+arduino.txt
2021-10-26
python串口mpu6050模块
2019-01-10
MicrosoftSpy.zip
2021-11-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅