游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3304|回复: 7

怎样能得到mesh的中心坐标,并将其移动到世界原点旋转呢??

[复制链接]

23

主题

68

帖子

68

积分

注册会员

Rank: 2

积分
68
发表于 2006-4-10 23:29:00 | 显示全部楼层 |阅读模式
我把1个mesh导入 程序中,但他的原点不在世界原点,所以想得到mesh的中心 并将它移动到原点旋转 ,之后再移动回来,可是我要怎样才能得到mesh的原点x,y,z坐标呢?请各位指点,最好能给mesh原地旋转实例,谢谢了!

4

主题

43

帖子

43

积分

注册会员

Rank: 2

积分
43
发表于 2006-4-10 23:40:00 | 显示全部楼层

Re:怎样能得到mesh的中心坐标,并将其移动到世界原点旋转

计算包围球就好了 这样就可以用l模型坐标系下的圆心坐标

197

主题

1041

帖子

1104

积分

金牌会员

Rank: 6Rank: 6

积分
1104
QQ
发表于 2006-4-11 13:56:00 | 显示全部楼层

Re:怎样能得到mesh的中心坐标,并将其移动到世界原点旋转

在mesh的matrix数组中,取出3个绝对坐标,然后+在一起,再除3

23

主题

68

帖子

68

积分

注册会员

Rank: 2

积分
68
 楼主| 发表于 2006-4-11 22:09:00 | 显示全部楼层

Re:怎样能得到mesh的中心坐标,并将其移动到世界原点旋转

朋友能给我个实例吗?谢谢,或这多少写两行代码,谢谢了!

23

主题

68

帖子

68

积分

注册会员

Rank: 2

积分
68
 楼主| 发表于 2006-4-11 22:28:00 | 显示全部楼层

Re:怎样能得到mesh的中心坐标,并将其移动到世界原点旋转

朋友能给我个实例吗?谢谢,或这多少写两行代码,谢谢了!

11

主题

123

帖子

123

积分

注册会员

Rank: 2

积分
123
发表于 2006-4-12 22:33:00 | 显示全部楼层

Re:怎样能得到mesh的中心坐标,并将其移动到世界原点旋转

这种代码只有书上有,一个德国人写D3D编程入门就有你要的代码?
  我简述一下方法:其实很简单,你只用在渲染mesh时,重新设置世界矩阵,这个矩阵就是mesh 的矩阵.改动矩阵的_41,_42,_43是mesh在世界矩阵的位置,改动其他常量就是旋转了,我记不清楚了,渲染完mesh将矩阵还原成单位矩阵,就是世界矩阵的原来的那个矩阵.你或者直接用DX里的函数旋转矩阵,也很方便,你上网搜一下,运气好你能找到,DXSDK里也有例子.

197

主题

1041

帖子

1104

积分

金牌会员

Rank: 6Rank: 6

积分
1104
QQ
发表于 2006-4-12 22:59:00 | 显示全部楼层

Re:怎样能得到mesh的中心坐标,并将其移动到世界原点旋转

每个mesh都有3个绝对坐标,每个绝对坐标中又包含了x,y,z值

meshcoord_1x,y,z)
meshcoord_2:(x,y,z)
meshcoord_3:(x,y,z)

计算mesh中心坐标的方法:
X=(meshcoord_1.X+meshcoord_2.X+meshcoord_3.X)/3
Y=(meshcoord_1.Y+meshcoord_2.Y+meshcoord_3.Y)/3
Z=(meshcoord_1.Z+meshcoord_2.Z+meshcoord_3.Z)/3

197

主题

1041

帖子

1104

积分

金牌会员

Rank: 6Rank: 6

积分
1104
QQ
发表于 2006-4-12 23:04:00 | 显示全部楼层

Re:怎样能得到mesh的中心坐标,并将其移动到世界原点旋转

图形领域后面的路还很长~建议先去了解一下3D原理方面的知识~

然后再回过头来做图形~
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-24 04:09

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表