游戏开发论坛

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

DirectX渲染出来的物体变形很严重,可能问题在哪儿?

[复制链接]

2

主题

24

帖子

24

积分

注册会员

Rank: 2

积分
24
发表于 2009-6-26 12:41:00 | 显示全部楼层 |阅读模式
如图片中所示,茶壶和立方体(红框所示)变形严重。
可能是哪一块代码出了问题?我再把相关代码粘出来。
说明:所采用的分辨率为640*480(这是ClientRect,不是WindowRect)

说明:直接用DirectX API写的,没有采用任何第三方库。

谢谢!

30

主题

146

帖子

152

积分

注册会员

Rank: 2

积分
152
发表于 2009-6-26 13:21:00 | 显示全部楼层

Re:DirectX渲染出来的物体变形很严重,可能问题在哪儿?

把摄像机视角调小点试试。

2

主题

24

帖子

24

积分

注册会员

Rank: 2

积分
24
 楼主| 发表于 2009-6-26 13:54:00 | 显示全部楼层

Re: Re:DirectX渲染出来的物体变形很严重,可能问题在哪儿?

rikpan: ReirectX渲染出来的物体变形很严重,可能问题在哪儿?

把摄像机视角调小点试试。


非常感谢,效果好多了(如下图)。

我所作的调整是(之前用的是D3DX_PI/2.0f):
if (D3DXMatrixPerspectiveFovLH(&matProj, D3DX_PI/4.0f, aspect, 1.0f, 1000.0f)==NULL) return FALSE;

请问,这个值用多少为好?因为现在效果似乎还有点点变形。

30

主题

146

帖子

152

积分

注册会员

Rank: 2

积分
152
发表于 2009-6-26 15:39:00 | 显示全部楼层

Re:DirectX渲染出来的物体变形很严重,可能问题在哪儿?

我一般就是45度了,可以把物体尽量离摄像机远点吧。
也可以试试正交投影,物体不会变形,但是没有远小近大的效果。

2

主题

24

帖子

24

积分

注册会员

Rank: 2

积分
24
 楼主| 发表于 2009-6-26 16:14:00 | 显示全部楼层

Re: Re:DirectX渲染出来的物体变形很严重,可能问题在哪儿?

rikpan: ReirectX渲染出来的物体变形很严重,可能问题在哪儿?

我一般就是45度了,可以把物体尽量离摄像机远点吧。
也可以试试正交投影,物体不会变形,但是没有远小近大的效果。


再次感谢你详尽的指导!

8

主题

79

帖子

126

积分

注册会员

Rank: 2

积分
126
发表于 2009-6-26 20:15:00 | 显示全部楼层

Re:DirectX渲染出来的物体变形很严重,可能问题在哪儿?

aspect 应该是窗口的长宽比吧

2

主题

24

帖子

24

积分

注册会员

Rank: 2

积分
24
 楼主| 发表于 2009-6-29 14:52:00 | 显示全部楼层

Re: Re:DirectX渲染出来的物体变形很严重,可能问题在哪儿?

wisesoft: ReirectX渲染出来的物体变形很严重,可能问题在哪儿?

aspect 应该是窗口的长宽比吧


对的,这一点没错。
窗口大小为:640*480(这是ClientRect,不是WindowRect)
float aspect=640.0f/480.f;

11

主题

1238

帖子

1782

积分

金牌会员

Rank: 6Rank: 6

积分
1782
发表于 2009-6-29 20:27:00 | 显示全部楼层

Re:DirectX渲染出来的物体变形很严重,可能问题在哪儿?

很不错的效果
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-12-19 21:31

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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