游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2551|回复: 2

DirectX新手问题

[复制链接]

5

主题

9

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2010-10-17 17:17:00 | 显示全部楼层 |阅读模式
D3DXMATRIX mInvView;

D3DXMatrixInverse(mInvView,NULL,&m_mView);

D3DXVECTOR3 * pZBasis = (D3DXVECTOR3 *)&mInvView._31;

请问谁知道 D3DXVECTOR3 * pZBasis = (D3DXVECTOR3 *)&mInvView._31; 这句是怎么解释的吗?FLOAT * 是怎么强制类型转换成*D3DXVECTOR3的[来源:GameRes.com]?

转换后pZBasis->x  pZBasis->y  pZBasis->z  的值分别是多少?


86

主题

2251

帖子

2384

积分

金牌会员

Rank: 6Rank: 6

积分
2384
QQ
发表于 2010-10-17 21:48:00 | 显示全部楼层

Re: DirectX新手问题

因为D3DXVECTOR3是3个FLOAT。
mInvView._31、mInvView._32、mInvView._33是3个FLOAT。
地址类型转一转就能用,因为数据在存储器里的结构是一样的。
所以pZBasis->xp、ZBasis->xp、ZBasis->x分别等于mInvView._31、mInvView._32、mInvView._33。

5

主题

9

帖子

9

积分

新手上路

Rank: 1

积分
9
 楼主| 发表于 2010-11-1 16:33:00 | 显示全部楼层

Re: DirectX新手问题

谢谢指教!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-1 19:35

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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