热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Direct3D如何建立一个立方体然后把我的ViewPoint放到里面!我给300分

我要用Direct3D建立一个虚拟的屋子,然后把我的视角放到屋子里面,并且可以水平旋转,就象是虚拟现实空间那样。其实就跟DOOM类游戏一样。并且能够用PICK函数去选取在指定点
我要用Direct3D 建立一个 虚拟的屋子,然后把我的 视角放到屋子里面,并且可以水平旋转,就象是虚拟现实空间那样。
    其实就跟DOOM类游戏一样。并且能够用PICK 函数 去选取 在指定点 上对应的物件。
    谁有 类似的代码,我给300分,说话算数。

25 个解决方案

#1


。。

#2


IM or RM?

#3


IM or RM? 
??????????????????

#4


..

#5


我是说你要用哪种模式,Retained mode or Immediate mode?
DX7 or DX8?

#6


to:Viper() 
DX7 大哥可有代码否!! 
多谢了! 
t.ye@263.net
有相关的文章,网址,书籍也行。
我这两天一直在 网是找相关的资料,头都快要大了。

 

#7


建议你去装一个DX7SDK,里面有很多精彩例子,会找到你所需要的。
我不知道你是否有图形学的基础,D3DIM真是太困难了。:-(

至于PICK的实现,可以装一个DX8SDK,里面有一个例子专门讲这个。

老实说DirectX编程极度缺乏资料,最最宝贵的就是SDK文档了。
仔细研究其中的例子,你会大有收获的。请相信,这是一个过来人的体会。

#8


非常感谢!! 
我回去看看!!
说老实话,我已经装了,DX8SDK可惜 不能用 不知道是 怎么回事,找不到D3D8.DLL 我把别人的拷贝过来,可是还是 不能用。 晕啊! 要不就是 我们公司的这套东西太烂。

#9


非常感谢!! 
我回去看看!!
说老实话,我已经装了,DX8SDK可惜 不能用 不知道是 怎么回事,找不到D3D8.DLL 我把别人的拷贝过来,可是还是 不能用。 晕啊! 要不就是 我们公司的这套东西太烂。

#10


安装完SDK之后,要在VC中设置一下目录属性,以便能引入相应的.H档和.lib档。

Tools-->Options...-->Directories-->

我想你是这个没设吧。

#11


不是 这个问题,我还没有面到连这个都不明白。
而是我的 机子里 根本就没有 D3D8.DLL 这个函数,我重装 也没戏。
受不了了,我还是去找DX7 SDK 装算了。
关于 PICK 的例子我 找到了。
我现在的问题 是如何 解决 把我的 camera 放到我建立的屋子里去,还有就是怎么把我的 墙壁 用我的图片从里面贴上去。 我看过一个 类似的例子,也是 微软的, 从外面看  一个立方体 转动,但是一但我把我的 camera  放到里面去,发现 里面的墙壁的  黑色的。这才是我 真正头痛的东西。 
不知Viper 老兄 有什么好的建议啊。

#12


错了 是 没有D3D8.DLL  这的动态库

#13


错了 是 没有D3D8.DLL  这的动态库

#14


真奇怪,你不会是没装directX8 run time吧?按理说装sdk时就应该装上的呀,我在winME和w2k下都装过,no problem! 
你说的那个问题是因为direct3d默认只渲染triangle的正面(法向量为正),如果你的模形是在程序中生成的,那triangle的顶点顺序一定要正确,平面的法向量的方向跟顶点的顺序是有关系的,如果是在建模软件中生成的,那干脆为你的正方体里面加一层“里子”(我对建模软件不熟,不知道怎样做出一个正面朝里的正方体),我们做过的一个项目就是这样的(室内游览,反正墙有两个面也是应该的)

#15


我也care

#16


to:rocks_lee(石子儿)
多谢  你说的很是,我有点开窍了。
你做个这个 室内浏览 把你的代码给我好吗,我给你300分。
 

#17


哈哈,不好意思,那个项目是毕设做的,代码留在学校了,手头没有。
你可以看看DX sample里的D3DRM->Direct3D RM Viewer, 我的那个程序实际就是它的一个简化版(不过有自己设计的碰撞检测算法:)

#18


说老实话,我到现在都不知道你用的是哪种模式?
从你的话‘camera'来看,应该是RM了,不过这种东东在DX8中已经淘汰了。

至于你的问题,应该是法向量的问题,
也可以用SetRenderState( D3DRENDERSTATE_CULLMODE, D3DCULL_NONE );
来解决。

至于在屋内的例子,应该有很多才对,你可能没仔细看!
比如D3DIM Samples中的Lightmap,这是很经典的一个例子,
光线映射贴图.

如果真要学3D,我建议使用IM,毕竟这才是真正的3D,不过有点烦:-)

#19


我写了一些例子,如果你想学IM的话,可以和我联系。
RM的我就没有了。

OICQ:31731705
Mail:Bo.Snake@tomor.com.cn or brsy@263.net or lovebr@126.com

#20


多谢 Viper() 和rocks_lee(石子儿) 
我又看到神仙了。
对于 Direct3D 我才刚开始看,看的书 和例子 都是保留模式的。
主要是为了应付一个烂项目,下个礼拜我去看 立即模式的。
to: Viper()  你说的那些 DX7 SDK 下的例子我看了,但是 我想建立工程 自己调试一下, 就出问题了,主要是微软的 例子代码 做的太简洁了,我实在是懒的 自己去一个一个 cpp 的去添加。
   如果你已经 做好的例子(IM) 我要 我要,我会把决大部分 分加给你的。 
   t.ye@263.net 

#21


不会啊,一般来说SDK中的例子都只有一两个文件(xxxMain.cpp等),只要在Tools->Options->Directories中将其对应库(.h , .lib, .cpp)加入就可以编译了,
我也做过几个D3D的程序,等到能实现一定功能的时候代码也是一大堆,所以就如Viper大哥所说,看看SDK的例子就可以了,而且其中的注释也很详细

#22


OK,那是我初学D3DIM时作的一个例子,很不完善,可能还有些bug。
不过可以作为一个参考。

这个例子画了7个球,类似于一棵树,上面是根,Left Mouse button 作水平动作,Right mouse button 作vertical action。就这么简单。

我已经用RAR压缩过了。

#23


建议您访问www.etechbase.net/tech,里面有很多资料,也许可以解决您的问题。
访问http://168.168.18.11:81/etechbase/advsearch.php将您的问题输入查询内容框,选择不同的精确程度,即可以找到你所需要的答案。效果还是可以的。 

#24


多谢诸位神仙了!!
尤其是 Viper()
我去看代码了。
说话算数 我这就加分 

#25


to:Viper()  
一次给 不出 300分!! 我又开了一个帖子 省下的40分 在那里给你!! 你去登记就是了。

推荐阅读
  • 本文主要从TLS1.3的优势、部署和时间发展线介绍了这上篇文章回顾:浅谈DHCP协议 ... [详细]
  • 安装ha软件一、安装软件最稳定的版本是5.4.0,优先安装稳定版本5.4安装依赖于包base.data,cluster的man包安装失败原因是缺少base.data包安装所有clus ... [详细]
  • 测试用例的重要局部导入依赖{代码}capabilities设置初始化driverwebdriver.remote 隐式期待,加强用例的稳定性元素定位与操作断言capabilities设置官网文档阐明罕用参数键形容值noReset在以后session下不会重置利用的状态。默认值为falsetrue,falsefullReset(iOS)删除所有的模拟器文件夹。(Android)要革除 ... [详细]
  • 【拯救赵明】全面防护网络***服务器负载及安全解决方案
    【拯救赵明】拿什么拯救我的网站活动链接:http:51ctoblog.blog.51cto.com26414300667喜欢本文请抽空帮我投下票哈~谢谢各位ÿ ... [详细]
  • IIS启用Gzip的方法与优缺点分析是千自学中一篇关于Discuz论坛的文章简介:现代的浏览器IE6和Firefox都支持客户端Gzip,也就是说,在服务器上的网页,传输之前,先使用Gzip压缩再传输给客户端,客户端接收之后由浏览器解压显示,这样虽然稍微占用了一些服务器和客户端的C ... [详细]
  • 201820192 20175226王鹏雲 实验四《Android程序设计》实验报告
    2018-2019-220175226王鹏雲实验四《Android程序设计》实验报告实验报告封面课程:Java程序设计班级:1752班姓名: ... [详细]
  • 最近在看GitHub上的一个很火的项目是:ImageSharp。这是一个纯.netcore的图像处理库,没有使用其他的任何依赖。在看这个项目过程中激发了我对图像文件编码解码的兴趣。 ... [详细]
  • 搭建简单Ext
    一、EXT是什么?1.Ext是一个Ajax框架,可以用来开发带有华丽外观的富客户端应用,使得我们的bs应用更加具有活力及生命力࿰ ... [详细]
  • 校园监控项目整理
    1、项目步骤下面我们来举例说明一个监控改造项目,先说下背景,一栋一层小别院,业主要求在大门口、大厅、儿童房、厨房以及后门洗衣处增加监控。由 ... [详细]
  • 小记hbase数据库java API 常用方法及案例
    HBaseAdmin类:管理hbase数据库的表信息,‘创建表、删除表、列出表选项、使表有效/无效、添加或删除列簇’;  ... [详细]
  • 安装hadoop2.9.2jdk1.8centos7
    安装JDK1.8查看JDK1.8的安装https:www.cnblogs.comTJ21p13208514.html安装hadoop上传hadoop下载hadoop地址http:m ... [详细]
  • 更多_想说爱你不容易 | 使用最小 WEB API 实现文件上传(Swagger 支持)
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了想说爱你不容易|使用最小WEBAPI实现文件上传(Swagger支持)相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 点击:【第一章:Java开发岗:基础篇】计算机基础问题、HashMap、Fail-safe机制Fail-fast机制、Synchronized、ThreadLocal、AQS、线程 ... [详细]
  • 怎样给文件夹上锁?方法一:不要去相信网上下载的文件夹加密软件,最好的还是winrar,或者使用魔法兔子也不错方法二:不要用加密软件,任何加密软件都有破解的。教你一种办法,是外人无法 ... [详细]
  • 本文目录一览:1、ExtJS中如何让日历控件向上,点击向下显示,做成图2那种向上的 ... [详细]
author-avatar
饥饿的饮水机
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有