社区
游戏开发
帖子详情
请问各位大侠,在D3D中怎么让Mesh显示出来,表面看起来过渡更圆滑些啊,不是棱角分明的那种? 急用,100分求助
TakeEdge
2005-05-20 12:59:35
RT
是不是要用到SetRenderState之类的函数作一些设置,还是要或是什么的啊?
...全文
280
17
打赏
收藏
请问各位大侠,在D3D中怎么让Mesh显示出来,表面看起来过渡更圆滑些啊,不是棱角分明的那种? 急用,100分求助
RT 是不是要用到SetRenderState之类的函数作一些设置,还是要或是什么的啊?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
why54
2005-07-11
打赏
举报
回复
关注!
TakeEdge
2005-07-10
打赏
举报
回复
设置过了,没用
而且,D3DRS_SHADEMODE 好像默认就是D3DSHADE_GOURAUD吧。
cxx1121
2005-06-27
打赏
举报
回复
设置 shademode 为 D3DSHADE_GOURAUD 试试看?
d3ddevice.SetRenderState D3DRS_SHADEMODE, D3DSHADE_GOURAUD
TakeEdge
2005-06-23
打赏
举报
回复
我想也可能是法线没有处理好吧,但不知具体如何做呢,对不起,我接触D3D时间不长,望能说得详细些,最后一个问题,回答即结帖。
xbeggar
2005-06-01
打赏
举报
回复
一般使用法线映射的方式,欺骗用户的眼睛,达到比较圆滑的效果,可以再结合凹凸纹理
black_bird
2005-05-28
打赏
举报
回复
你是想显示mesh的网格,还是想显示整个带贴图的模型?
谢谢happy__888的提醒,这两天找到了点这方面的资料。看了一点。等有想法了再来灌水^_^
lingjingqiu
2005-05-27
打赏
举报
回复
模型细分算法
不过需要在裁减以后才能使用,因为太好资源了
TakeEdge
2005-05-27
打赏
举报
回复
谢谢大家的捧场哈
我找了下资料,对于 black_bird(出来跑,迟早要还的)所说的插入顶点,DX本提供有支持,叫做什么NPATCH。我按其例子代码试了下,MESH顶点是增多了,但看起来还是没有变圆滑,甚至贴图也不对了,MESH表面出了许多条撕裂的小缝,而且因为顶点增多,显示效率严重下降。
我说的这个问题也许不是模型精细不精细的问题,因为,同样的模型别人显示出来效果就很好,而我的就不行,看来还是技术的问题。
继续寻求帮助。。。
寻开心
2005-05-25
打赏
举报
回复
楼上所说的就是所谓的subdivision 子分/细分算法的基本思想
但是对于一般情况来说,重新制作更精细的模型来得更快更方便一些
对于美工来说,表达同一个物体,在达到一定相似度的要求下,做一个点面数目多的模型要比做点面数目少的模型来说容易得多
black_bird
2005-05-25
打赏
举报
回复
今天又想了一下.半夜里思路有点乱,说得挺乱.我的意思就是插顶点.就是在原有顶点间插入更多新的顶点,以形成更圆滑的mesh.新顶点的位置由周围的原有顶点的位置算出.为得到圆滑的新顶点,算法可能近似滤波器算法,例如低通滤波器算法.sinc(x) = sin( 3.141592654f * x ) / ( 3.141592654f * x );
black_bird
2005-05-25
打赏
举报
回复
探讨一下哈。也没试过,要是说错了不要bs我。
1.这个问题好像可以看作采样滤波类型的问题。从原始的顶点生成更圆滑一些的顶点构成,是不是可以看作类似于根据(离散的)采样信号重建(连续的)原始信号,再对重建的原始信号进行更大密度的放大重采样的问题?能不能找到一个合适的滤波器算法可能是最主要的。
2.就这个问题来说,可以在mesh的原有顶点之间再插入一些新的顶点,这些新顶点的位置,由其周围的原有顶点的位置来生成,简单处理的话可以用新顶点周围的原有顶点位置乘以不同的权值再相加得出该新顶点的位置。权值的算法也许可以考虑用新顶点距各原有顶点的距离作为参数?
xingzhe2001
2005-05-23
打赏
举报
回复
我知道在opengl中每个点的法线用点周围的三角形的法线求平均值,在单元化就会得到平滑的效果
rabbitlzx
2005-05-22
打赏
举报
回复
模型建得好一些不就行了
TakeEdge
2005-05-20
打赏
举报
回复
还是没有解决啊
kofightas
2005-05-20
打赏
举报
回复
细化mesh好像还没有这样的现成东西可用
寻开心
2005-05-20
打赏
举报
回复
是否圆滑取决于两个方面
1 模型是否做得够精细
2 法向量是否正确设置
显示的时候,D3DRS_NORMALIZENORMALS 需要设置为TRUE
TakeEdge
2005-05-20
打赏
举报
回复
怎么没人帮忙啊,自己顶一下
基于Socket的Android手机视频实时传输所有源程序
基于Socket的Android手机视频实时传输所有源程序,包括Android客户端和PC端。同时包含说明文档。
VMware ESXI 6.5安装成功 后 管理页面网页不
显示
登录对话框?
请问
各位
大侠
,是什么原因
VMware ESXI 6.5安装成功 后 管理页面网页不
显示
登录对话框?
请问
各位
大侠
,是什么原因
C# For Unity系列之入门篇
你想当“李逍遥”式的“
大侠
”吗? 这里无需计算机基础,无需编程经验,你也不必是计算机专业的在校大学生....只要爱好游戏,怀揣梦想! 有一定自主学习能力,跟着刘老师从“编程小白”修炼为游戏研发“大虾”吧!!...
allgro
显示
网络名称_ALLEGRO如何
显示
网络标号?
在ALLEGRO
中
,可否让每个焊盘
显示
自己所在的网络标号呢?PROTEL里边就可以!觉得这样很方便布线!请教各位!谢谢!在走线的时候右边的OPTIONS里面有一个
显示
是: NET: ******,这便是网络的名称了.不知道你所问的...
IntelliJ IDEA 在使用manven后的纠结(每次修改代码都要重启tomcat才能看效果吗?),请各位
大侠
来看看问题
IntelliJ IDEA 在使用manven后的纠结(每次修改代码都要重启tomcat才能看效果吗?),请各位
大侠
来看看问题
游戏开发
8,305
社区成员
23,682
社区内容
发帖
与我相关
我的任务
游戏开发
游戏开发相关内容讨论专区
复制链接
扫一扫
分享
社区描述
游戏开发相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章