游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4104|回复: 4

对光线引擎一些函数的理解,请作者看看是否理解正确,

[复制链接]

71

主题

1330

帖子

2585

积分

金牌会员

Rank: 6Rank: 6

积分
2585
发表于 2006-6-21 14:16:00 | 显示全部楼层 |阅读模式

collide.h


/* 判断一条光线和地图是否相交 */
/*
判断 a b 两点之间的线段与地图是否相交,返回的交点为 cross
如果不相交 return 值为 0(推测,未证实)
*/
int gLineCrossMap( vec3_t a, vec3_t b, vec3_t cross );

/* 判断一个模型和地图是否发生碰撞,并计算 P2 坐标 */
/*       
p1 是原始坐标
p2 是模型当前坐标
如果模型与地图碰撞,用p1坐标替换p2坐标,让模型回到原始坐标位置
*/       
int gModelCollideMap( vec3_t p1, vec3_t p2, int model, int map );

27

主题

409

帖子

440

积分

中级会员

Rank: 3Rank: 3

积分
440
QQ
发表于 2006-6-21 18:14:00 | 显示全部楼层

Re:对光线引擎一些函数的理解,请作者看看是否理解正确

第一个函数理解正确。

/* 判断一个模型和地图是否发生碰撞,并计算 P2 坐标 */
int gModelCollideMap( vec3_t p1, vec3_t p2, int model, int map );

p1 是模型移动前的坐标
p2 是模型移动后的坐标
如果模型与地图没有发生碰撞,则 p2 不变,函数返回 0 。
如果模型与地图碰撞,p2被修改为碰撞后的坐标(因现在物理引擎还不完善,只能返回 P1 坐标),函数返回非 0 值

14

主题

166

帖子

171

积分

注册会员

Rank: 2

积分
171
发表于 2006-6-21 21:54:00 | 显示全部楼层

Re:对光线引擎一些函数的理解,请作者看看是否理解正确

能不能解释一下 gLookAt的参数信息,第三个参数不太明确。第一个参数的旋转方法也不是很清楚。

还有,在取地图高度的返回值一定是整数吗?有没有返回一些比较精确的高度数据。

27

主题

409

帖子

440

积分

中级会员

Rank: 3Rank: 3

积分
440
QQ
发表于 2006-6-22 15:29:00 | 显示全部楼层

Re:对光线引擎一些函数的理解,请作者看看是否理解正确

第一个参数是眼睛的坐标,用来控制摄像机的位置。
第二个参数是视线上的任意一点,用来控制摄像机的方向。
第三个参数是向上的方向,是一个向量(不是坐标),用来控制摄像机沿视线的旋转角度。

取地图高度函数的返回值现在只能是整数,我会考虑返回 float 类型的值。

以后的版本,我会写上函数的详细说明,谢谢你的建议!

3

主题

12

帖子

18

积分

新手上路

Rank: 1

积分
18
发表于 2006-7-26 11:05:00 | 显示全部楼层

Re:对光线引擎一些函数的理解,请作者看看是否理解正确

希望有更详细我函数说明文档!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-5-17 18:00

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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