首页
学习
活动
专区
工具
TVP
发布

逍遥剑客的游戏开发

专栏作者
306
文章
337899
阅读量
55
订阅数
DXUT进阶
这个指南涵盖了更多DXUT的高级应用. 这个指南里的大部分功能是可选的, 为了以最小的代价来增强你的应用程序. DXUT提供了一个简单的基于GUI系统的精灵和一个设备设置对话框. 另外, 它还提供了一些摄像机类.
逍遥剑客
2022-01-11
4450
Nebula3渲染层: Graphics
图形子系统是渲染层中图形相关子系统的最高层. 它基本上是Mangalore图形子系统的下一个版本, 但是现在整合进了Nebula, 并且与低层的渲染代码结合得更加紧密. 最基本的思想是实现一个完全自治的图形”世界”, 它包含模型, 灯光, 还有摄像机实体, 而且只需要与外部世界进行最少的通信. 图形世界的最主要操作是加入和删除实体, 还有更新它们的位置. 因为Mangalore的图形子系统跟Nebula2的完全分界线从Nebula3中移除了, 很多设想都可以用更少的代码和交互来实现. 图形子系统也会为了异步渲染而多线程化, 它和所有的底层渲染子系统都会生存在它们自己的fat-thread中. 这本应是Nebula3层次结构中更高级的东西, 但是我选择了这个位置, 因为这是游戏跟渲染相关通信最少的一部分代码. 正是因为图形代码有了更多的”自治权”, 游戏相关的代码可以跟图形以完全不同的帧率来运行, 不过这需要实践来证明一下. 但是我一定会尝试, 因为完全没有必要让游戏逻辑代码运行在10帧以上(格斗游戏迷们可能会反对吧). 图形子系统中最重要的公有类有:
逍遥剑客
2022-01-11
2950
Nebula3 SDK (Apr 2009)更新内容
这里还有一些针对Foundation和Render层的有趣的代码统计 (希望图片没有缩放的太失真):
逍遥剑客
2022-01-11
1.1K0
怎样使用深度纹理
这个问题经常出现, 所以我试着来总结一下ATi和nVidia芯片对于深度纹理的支持情况. 如果发现我说错了nVidia的深度实现, 请告知我 :)
逍遥剑客
2022-01-11
5720
Light Pre-Pass 渲染器----为多光源设计一个渲染器
渲染器设计就像为一座房子打地基, 结果可能比预期大了, 小了, 或者太笨重了. 预先了解要在它之上建造什么, 并且为未来的扩展做出合理的预测, 是建造一座稳定房子的先决条件.
逍遥剑客
2022-01-11
6090
Nebula3 SDK Nov 2009 更新内容
跟以往一样, 只包含了Win32平台的源码. Console平台特定代码 (Xbox360, PS3 还有 Wii) 介于法律问题没有包括进去.
逍遥剑客
2022-01-11
4130
卡马克揭开VR延迟背后的真相
延迟是OculusVR所面对的最大挑战之一, 它不仅会分散玩家体验游戏时的注意力, 还会导致晕动症, 所以找出它背后的原因并消除它是非常重要的。
逍遥剑客
2022-01-11
4340
延迟是AR/VR体验的基础
译者注: 原文发表于2012年, 虽然当时的一些硬件条件限制现在已经没有了, 但我们可以从中学习到AR/VR的延迟解决思路. 另外, 译文略过了显示器的发展史
逍遥剑客
2022-01-11
9040
UE4 LightRendering
最近把HairWorks整合到了UE4 4.20, 整合的过程中发现了一些没法直接merge的代码, 主要集中在LightRendering.cpp和DeferredLightingPixelShader.usf中. 所以顺便简单读了一下代码, 把其中的一些关键字概念整理出来方便查阅理解.
逍遥剑客
2019-02-20
1.7K0
一些VR渲染优化方法
VR渲染需要左右眼两幅不同的画面,现在的大部分引擎都是暴力的直接渲染两遍,这样做想想性能也很难达到75FPS(或90FPS)
逍遥剑客
2019-02-20
8830
Nebula3的渲染流程
每帧的渲染过程都写进了配置文件, 默认使用的是"frame/win32/dx9default.xml", 阴影还有另外一套.
逍遥剑客
2019-02-20
4620
Nebula3的渲染线程插件(Render Thread Plugin)
上个版本的SDK把渲染放入一个独立的线程, 这是一个很先进的改动 但是它也造成一个问题: 不好操作底层的渲染API了 对于想自己控制VB, IB来绘制三角形级的demo程序来说, 一点也不方便 之前我写过一个SyncRenderApplication, 但是很不完美, 比如不能使用InputServer April2009加入了RTPlugin, 为写demo指明了方向, 嘿嘿(虽然作者原意肯定不是这样的) 从上图可以看出, RTPlugin完全存在于Render Thread, 这样可以在它的派生类中直接
逍遥剑客
2018-05-23
3960
在Nebula3中加载自定义模型的思路
Nebula3中目前还是没有地形… 不过冒似国外的引擎除了CryEngine外对于地形都不重视….. 之前看了下WOW的地形组织方式, 一直在想怎么把它加进来 模模糊糊地感觉到, 它应该是把Model
逍遥剑客
2018-05-23
1.2K0
Nebula3的场景管理
N3的场景管理最为核心的一个类是GrphicsServer, 它包含一些"stage"和"View". Stage把图形实体(模型, 摄像机, 灯光)进行分类渲染. 它的主要工作是在连接的图形实体间加速可见性查询. 不同的可见性查询由不同的Stage子类来实现. N3会提供了一些不同用途的Stage子类, 但你也可以根据程序需要自己来实现可见性查询机制. 可见性查询适用于这些实体: Camera->Light: 查找对于指定摄像机可见的所有灯光 Camera->Model: 查找对于指定摄像机可见的所有模
逍遥剑客
2018-05-23
3780
Direct3D学习(四):高级着色语言初探
传统的3D绘图编程方式 (1) 将顶点代入顶点缓冲区 (2) 设定变换函数 (3) 设定光源 (4) 设定纹理和材质 (5) 绘制多边形 用的比较多的明暗处理算法在图形学上我们就学过:朗伯算法和高洛德算法。而在3D加速卡中可以硬件实现的的也就是上面的经典算法。但是随着硬件的发展,1999的SigGraph大会上游戏程序员一致希望将算法直接写入3D显卡(正确地说是3D加速芯片中),会后便出现了GPU(Graphic Processing Unit)编程技术。 以前,像自然光渲染这样的算法,只能呆在纸上,因为
逍遥剑客
2018-05-23
8900
Direct3D资源
CSDN,终于能登录了....... 资源属性 Usage. 资源的用途, 如纹理或渲染目标. Format. 数据的格式, 如一个二维表面的像素格式. Pool. 资源所分配的内存空间类型. Type.资源的类型,如顶点缓冲区或一个渲染目标. 关于内存池: D3DPOOL_DEFAULT 资源保存到显存或AGP内存中,发挥更高的性能.设备丢失后,必须在Reset()之前释放,并在恢复设备时重新创建 D3DPOOL_MANAGED 自动在系统内存中进行备份,设备丢失与恢复过程中D3D会自动进行资源的
逍遥剑客
2018-05-21
9180
没有更多了
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档