用C#一步一步构建一个完整的D3D场景(一) 整体构思

    最近突然对Direct3D编程来了点兴趣,开始看一些Direct3D的教程。厌倦了Direct3D教程里千篇一律的旋转三角形,决定用C#构建一个完整D3D场景。

    先对场景框架做一下基本的梳理。

    D3D_Camera类:摄像机类,可以实现摄像机的平移(前进、后退、左移、右移、上升、下降)、旋转(左右转、俯仰视、侧向旋转)和缩放。

    D3D_Light类:灯光类。

    D3D_Curve类:D3D曲面基类,可以生成自定义曲面,数据存放在Mesh中。像我这样不会建模的人可以用这个类组合搭建一个复杂的D3D对象。

    D3D_Object类:D3D对象的基类,具体的物体可以从该类继承。

    D3D_MeshObject类:从D3D_Object类继承而来,数据从.X文件读取。

    D3D_CurveObject类:从D3D_Object类继承而来,由数个D3D曲面组合而成的复杂物体。

    D3D_Control类:D3D下的控件基类,所有的控件都从该类继承,类似于Windows的控件。

    D3D_Terrain类:分形随机生成的D3D地形。

    D3D_Sky类:分形随机生成的D3D天空。

    D3D_World类:一个完整的D3D世界,由地形、天空以及若干个D3D_Object组成。

    D3D_Scene类:一个D3D场景,包含一个摄像机、至少一个环境光(还可以包含其他灯光)、一个D3D世界以及一些辅助的D3D控件。场景的刷新以及与用户的交互均在这个类中完成。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值