当前位置: 首页 > news >正文

h5网站制作平台网站备案 网站建设方案书

h5网站制作平台,网站备案 网站建设方案书,建设设计网站公司,90设计网站官网BEPUphysics v1 入门指南 前言下载获取库工程1.创建物理模拟环境2.添加物理实体3.与物理系统交互4.发射物体5.构建环境6.事件处理7. 进阶学习 前言 本文档记录完成 BEPUphysics 物理引擎的基础设置。 文档链接:https://github.com/bepu/bepuphysics1/blob/master/Documentatio…

BEPUphysics v1 入门指南

  • 前言
  • 下载获取库工程
  • 1.创建物理模拟环境
  • 2.添加物理实体
  • 3.与物理系统交互
  • 4.发射物体
  • 5.构建环境
  • 6.事件处理
  • 7. 进阶学习


前言

本文档记录完成 BEPUphysics 物理引擎的基础设置。
文档链接:https://github.com/bepu/bepuphysics1/blob/master/Documentation/Documentation.md

下载获取库工程

github链接:https://github.com/bepu/bepuphysics1/blob/maste

更多示例参考 BEPUphysicsDemos!

1.创建物理模拟环境

基础设置,在开始模拟前,需要创建 Space 类实例作为物理世界容器:

space = new Space();

在游戏的 Update 方法中添加时间推进逻辑:

space.Update();

完整代码

        public void Init(){DLogger.Log("==============>Init world physics system!");//关掉物理系统Physics.autoSyncTransforms = false;  //射线检测关闭Physics.autoSimulation = false;//创建物理世界,设置重力加速度bEpUPhysicsSpace = new BEPUphysicsSpace{ForceUpdater ={Gravity = new FPVector3(0, -9.81m, 0)},TimeStepSettings ={TimeStepDuration = Time.fixedDeltaTime}};  }public void FixedTick(){if (bEpUPhysicsSpace != null){bEpUPhysicsSpace.Update(Time.fixedDeltaTime); }}

2.添加物理实体

Entity 类代表物理世界中的物体,支持多种形状:

盒子 (Box)
圆柱 (Cylinder)
球体 (Sphere)
胶囊体 (Capsule) 等

实体分为两类:
动态实体:受物理力影响(质量参数)
运动学实体:不受力影响(无质量参数)

创建地面(运动学盒子):

Box ground = new Box(Vector3.Zero, 30, 1, 30);
space.Add(ground);

添加动态立方体:

space.Add(new Box(new Vector3(0, 4, 0), 1, 1, 1, 1)); // 最后一个参数是质量

设置重力加速度:

space.ForceUpdater.Gravity = new Vector3(0, -9.81f, 0);

3.与物理系统交互

渲染实体位置
通过实体变换矩阵同步图形:

Matrix worldMatrix = Transform * entity.WorldTransform;

4.发射物体

设置初速度发射盒子:

Box toAdd = new Box(camera.Position, 1, 1, 1, 1);
toAdd.LinearVelocity = camera.WorldMatrix.Forward * 10;
space.Add(toAdd);

5.构建环境

使用静态网格创建复杂地形:

Vector3[] vertices; 
int[] indices;
ModelDataExtractor.GetVerticesAndIndicesFromModel(model, out vertices, out indices);
var mesh = new StaticMesh(vertices, indices, new AffineTransform(new Vector3(0, -40, 0)));
space.Add(mesh);

6.事件处理

碰撞事件示例:

deleterBox.EventManager.InitialCollisionDetected += HandleCollision;void HandleCollision(EntityCollidable sender, Collidable other, CollidablePairHandler pair) {var otherEntity = other as EntityCollidable; if (otherEntity != null) {space.Remove(otherEntity.Entity);Components.Remove((EntityModel)otherEntity.Entity.Tag);}
}

7. 进阶学习

更多资源:
探索其他 示例程序
查阅 完整文档
访问 官方论坛 获取帮助
关键术语对照表
英文术语 中文翻译
Space 物理空间
Entity 物理实体
Dynamic entity 动态实体
Kinematic entity 运动学实体
Collision detection 碰撞检测
StaticMesh 静态网格
AffineTransform 仿射变换
Event handler 事件处理器
Bounding box 包围盒
代码注释翻译规范
保留所有技术术语原文(如 Space、Entity)
描述性文字全部翻译
保持代码缩进和格式不变
关键参数添加中文注释:

new Box(position,    // 初始位置width,       // 宽度height,      // 高度length,      // 长度mass         // 质量(动态实体必填)
);
`
http://www.dtcms.com/a/587301.html

相关文章:

  • 潮州网站建设上海嘉定网站建设公司
  • Data Sink定义、参数与可落地示例
  • 青岛网站设计网站wordpress 评论 邮箱
  • 杭州论坛网站制作diy电子商城网站
  • 做网站页面需要的资料安徽建设工程网
  • 网站建设中需要注意的问题高清短视频素材库无水印
  • 手机网站与pc网站同步广东茂名网站建设
  • 网站安全狗 拦截301xly000.WordPress.cok
  • 确山专业网站建设南昌师范学院网站建设的意义和目的
  • 权威的网站制作视频解析网站怎么做的
  • 公司注册网站官网郑州网站开发公司
  • 云南网站设计定制找网页设计公司去哪个平台
  • 网页设计与网站建设电话湖南建筑网
  • 网站升级建设方案开发公司网站建设
  • 阿里云有域名之后怎么建设网站我要招人在哪个网站招
  • python 做网站怎样潍坊美丽乡村建设一般发了哪个网站
  • 十大网站建立公司小程序宣传推广方案
  • 第1章 GIS基础入门
  • FPGA教程系列-Vivado IP核DDS核
  • 网站设计参考网站网站建设 费用 入哪个科目
  • 郑州企业网站建设网站制作公司网址
  • 淘宝网站建设退款wordpress应用和lamp
  • 分享一个基于微信小程序的网络安全知识科普平台的设计与实现,网络安全教育智能答疑小程序|在线测试科普宣传小程序
  • 济宁建设局官方网站网站建设与运行
  • 搭建一个公司网站常州设计网站
  • 比特币交易所网站开发黄页网站推广app软件
  • 怎样做站长建网站达州seo
  • 广州货运网站建设如何给网站做后台
  • 做微信公众号的网站西安企业做网站
  • linux安装配置nexus3.86