用坐标与碰撞检测效果

在这里插入图片描述
在这里插入图片描述
用pygame碰撞检测子弹 与 子弹 格子检查是否在墙内 结果差不了多少 输出的是碰撞点坐标

在计算角色与强的距离是 你用了几条射线

2024/4/26 13:20:48

在代码中,用于计算角色与墙之间距离的部分是通过投射多条射线来实现的。具体来说,在循环中,对屏幕宽度进行迭代,每个迭代都会计算一个射线的角度,并逐步增加与摄像机方向的偏移量,从而模拟视野中的每个像素点。然后,通过检查射线与地图中的墙壁交点,计算出摄像机到墙壁的距离,进而确定墙的高度和纹理。这个过程在代码中的以下部分实现:

python
for x in range(width):
ray_angle = camera_direction - 30 + (x / width) * 60
distance_to_wall = 0
while True:
distance_to_wall += 0.1
test_x = camera_x + distance_to_wall * math.cos(math.radians(ray_angle))
test_y = camera_y + distance_to_wall * math.sin(math.radians(ray_angle))
if map_data[int(test_y)][int(test_x)] == ‘1’:
# 墙的渲染和纹理处理
break
在这段代码中,ray_angle 计算了每个像素点对应的射线角度,然后通过增加 distance_to_wall 的值来沿着射线前进,直到射线与墙壁相交。这个过程模拟了从摄像机位置向前发射射线,直到与墙壁相交为止的情况。

2024/4/26 13:21:17

distance_to_wall这个是干什么的

2024/4/26 13:21:21

distance_to_wall 变量用于跟踪射线从摄像机位置开始沿着射线路径前进的距离。在代码中,通过逐步增加 `

2024/4/26 13:21:23

2024/4/26 13:21:25

It seems like you entered a character “呢.” Is there anything specific you’d like assistance with regarding this character or any related topic? Just let me know how I can help!

2024/4/26 13:21:38

distance_to_wall这个是干什么的

2024/4/26 13:21:45

distance_to_wall 变量用于跟踪射线从摄像机位置开始沿着射线路径前进的距离。在代码中,通过逐步增加 distance_to_wall 的值,模拟了射线从摄像机位置向前移动的过程。当射线与地图中的墙壁相交时,distance_to_wall 的值就代表了摄像机到墙壁的距离,这个距离将被用于计算墙的高度和纹理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值