游戏开发论坛

 找回密码
 立即注册
搜索
楼主: 哈兜小洵

一个在美国读书的朋友给我透露的暴风雪DX职位面试题

[复制链接]

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
发表于 2010-5-15 15:57:00 | 显示全部楼层

Re:一个在美国读书的朋友给我透露的暴风雪DX职位面试题

先绘制面法线和视线相反(dot为正)的面上的线段,这显然是背面,采用N个拆分的线段来绘制达到虚线的效果
然后是面法线和视线(dot为负)的面上的线段,这显然是面向视点的

2

主题

429

帖子

435

积分

中级会员

Rank: 3Rank: 3

积分
435
发表于 2010-5-15 23:16:00 | 显示全部楼层

Re:一个在美国读书的朋友给我透露的暴风雪DX职位面试题

只能想到这个:
单独画六个quad,每个quad根据面法向量和视线点乘的结果可以知道正面还是背面。
虚线的话,用glLineStipple。

362

主题

3023

帖子

3553

积分

论坛元老

Rank: 8Rank: 8

积分
3553
发表于 2010-5-16 01:08:00 | 显示全部楼层

Re:一个在美国读书的朋友给我透露的暴风雪DX职位面试题

D3DRENDERSTATE_CULLMODE

34

主题

443

帖子

478

积分

中级会员

Rank: 3Rank: 3

积分
478
发表于 2010-5-16 08:03:00 | 显示全部楼层

Re:一个在美国读书的朋友给我透露的暴风雪DX职位面试题

我觉得可以用压扁的三角形表示线条,这样可以实现背面消隐,也不会出现对角线。

4

主题

28

帖子

59

积分

注册会员

Rank: 2

积分
59
发表于 2010-5-16 08:52:00 | 显示全部楼层

Re:一个在美国读书的朋友给我透露的暴风雪DX职位面试题

立方体以三角形方式组成
SetRenderState(D3DFILLMODE, D3DFILL_SOLID);
SetRenderState(D3DRS_ZENABLE, true);
SetRenderState(D3DRS_ZWRITEENABLE, true);
SetRenderState(D3DRS_ZFUNC, D3DCMP_LESSEQUAL);
DrawCube();
SetRenderState(D3DRS_ZWRITEENABLE, false);
DrawCubeByLine();
SetRenderState(D3DRS_ZFUNC, D3DCMP_GREATEREQUAL);
DrawCubeByDashLine();



4

主题

28

帖子

59

积分

注册会员

Rank: 2

积分
59
发表于 2010-5-16 09:26:00 | 显示全部楼层

Re:一个在美国读书的朋友给我透露的暴风雪DX职位面试题

DrawCubeByLine();
DrawCubeByDashLine();
可以使用ID3DXLine(),如果用D3DFILL_WIREFRAME,会有对角线也绘制的问题。

1

主题

24

帖子

24

积分

注册会员

Rank: 2

积分
24
发表于 2010-5-16 15:13:00 | 显示全部楼层

Re:一个在美国读书的朋友给我透露的暴风雪DX职位面试题

我的理解应该就是一个类似于光照的问题了.
这里相机的位置可以看成是一个光源.然后判断视线与面的法线的向量点积可以知道你可以知道他们的夹角.当角度大于90度时,你明显是看不到的.故可以画虚线.小于90度大于等于0度则是你实现可以看到的面.

0

主题

769

帖子

1052

积分

金牌会员

Rank: 6Rank: 6

积分
1052
发表于 2010-5-17 09:46:00 | 显示全部楼层

Re:一个在美国读书的朋友给我透露的暴风雪DX职位面试题

画两次就可以了吧,
选择剔除,用实线把正面全画出来
然后再剔除选择背面,用虚线画出来
什么正反面判断全交给硬件,不需要自己去做

45

主题

1163

帖子

1165

积分

金牌会员

Rank: 6Rank: 6

积分
1165
发表于 2010-5-18 09:57:00 | 显示全部楼层

Re: 一个在美国读书的朋友给我透露的暴风雪DX职位面试题

我也尝试了一下, 用 Render Monkey 做了个

11

主题

1238

帖子

1782

积分

金牌会员

Rank: 6Rank: 6

积分
1782
发表于 2010-5-18 10:42:00 | 显示全部楼层

Re:一个在美国读书的朋友给我透露的暴风雪DX职位面试题

看看标题: 一个在美国读书的朋友给我透露的暴风雪DX职位面试题

暴风雪???........@_@
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-3 06:08

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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