骑马与砍杀中文站论坛

 找回密码
 注册(Register!)

QQ登录

只需一步,快速开始

搜索
购买CDKEY 小黑盒加速器
查看: 3686|回复: 2

[经验与教程] 漫谈骑砍三维之位置,向量和position计量

[复制链接]

286

主题

2593

回帖

1219

积分

男爵[离任版主]

Rank: 5Rank: 5Rank: 5

UID
2343857
第纳尔
17647
精华
0
互助
69
荣誉
1
贡献
278
魅力
90
注册时间
2014-12-4

骑士美德之英勇勋章[杰出会员活跃勋章]骑士美德之谦恭勋章[杰出会员财富勋章]骑士美德之奉献勋章骑士美德之仁慈勋章[杰出会员互助勋章]元老骑士勋章霸主正版勋章

鲜花(337) 鸡蛋(2)
发表于 2018-10-16 12:13:22 | 显示全部楼层 |阅读模式
本帖最后由 今天手气不错啊 于 2018-10-17 11:14 编辑

果你在大学或者其他场合学过三维或者空间几何的知识,那么你一定知道如下一些概念:

坐标:平面或者空间唯一确定的一个位置,用平面或者空间定义的坐标系表示的一个点
向量:在平面或者空间中一个从某起始点到终结点的有向线段
矩阵:一种有行和列的数据结构,常用于在空间坐标系中进行变换操作
四元数:一种数据结构,包含x,y,z和w四个数据的结构,常用于旋转操作

在一些三维引擎中,以上概念经常需要使用,麻烦的很,但是在骑砍的世界里,一切都变得简单了

骑砍世界只有一种数据结构,我称之为position计量,position具有坐标,向量和四元数等同的功能,也就是说,position计量既可以表示空间的一点,也可以表示空间上的一个方向,还可以表示获取到position计量在全局坐标系的方向

通常而言,一个position计量包含三种类型的信息:
位置信息:分别由x,y,z来表示点在三维空间的位置
方向信息:分别由x,y,z来表示该计量与x,y,z三个坐标轴的夹角信息
缩放信息:分别由x,y,z来表示该计量在x,y,z三个坐标上的缩放信息

在一般应用中,通常只需要position计量的位置信息和方向信息

获取position计量的位置信息的操作符:
position_get_x
position_get_y
position_get_z

获取position计量的方向信息的操作符:
position_get_rotation_around_x
position_get_rotation_around_y
position_get_rotation_around_z

获取position计量的缩放信息的操作符:
position_get_scale_x
position_get_scale_y
position_get_scale_z

当正确的获取position计量的位置和方向之后,剩下的就是你的想象力了 :)

来自汽油@vegetto的补充:
position参量在骑砍里不单单有记录位置量的用途,还可以用于存储多个与位置信息无关的但有联系的一些参数,或者比如prop_instance_dynamics_set_propertiesprop_instance_dynamics_apply_impulse这个操作里的position参量就是用来设定开启动态物理效果后一个物体受到的xyz上的摩擦力分力动力分力

评分

参与人数 3第纳尔 +50 互助 +1 收起 理由
Aomine Daiki + 1 文章不错,继续努力!
蛋清 + 30 .
小丑遊戲 + 20 原创内容,值得鼓励!

查看全部评分

212

主题

1032

回帖

1048

积分

子爵[版主]

Rank: 7Rank: 7Rank: 7

UID
2893127
第纳尔
14847
精华
0
互助
93
荣誉
21
贡献
325
魅力
1382
注册时间
2017-11-5
鲜花(431) 鸡蛋(0)
发表于 2018-10-16 13:38:02 | 显示全部楼层
本帖最后由 vegetto 于 2018-10-16 13:57 编辑

补充一下:position参量在骑砍里不单单有记录位置量的用途,还可以用于存储多个与位置信息无关的但有联系的一些参数,或者比如prop_instance_dynamics_set_properties和prop_instance_dynamics_apply_impulse这个操作里的position参量就是用来设定开启动态物理效果后一个物体受到的xyz上的摩擦力分力和动力分力。
广义的脱开骑砍来讲,坐标也是不单单有记录位置信息的效果,比如大家都熟悉的例子:线性代数和矩阵运算的题目中,有时就会有一种化代数为几何解法的简便方法。

但我觉得你这样讲对骑砍来说已经够了。我记得很久以前我看到你发过一个自己对高光等贴图概念的个人理解,结果曾经的幻域大佬就指责你讲的片面不专业,你们于是争执起来,然后小虎仔在那个帖子里圆场支持你说的言论我就深感赞同,小虎仔的意思很多东西不应该较真到底,能够用来解决目前你需要解决的问题就够了。其实很多时候就是这样,真理是有很多前提条件的,但我们应用真理解决一件具体事情时或许只需要在意某一个或几个条件,想多了反而于事于个人实情无益,甚至干扰效率,就像小学初中的时候老师不会告诉你负数可以开方或者早早告诉你一些几何定理在高一维空间的情况。所以还是学习的时候根据个人尽求全面理解,而做具体应用时可以将真理条件合理阉割化使用。
讲这些就是过去看到一些资深的modder会因为问题的专业性较真,所以希望现在和以后大家和而不同,先从解决具体问题出发再做适当补充

评分

参与人数 1互助 +1 收起 理由
小丑遊戲 + 1 感謝你的補充。

查看全部评分

鲜花鸡蛋

不凡教  在2023-6-22 20:40  送朵鲜花  并说:我非常同意你的观点,送朵鲜花鼓励一下

286

主题

2593

回帖

1219

积分

男爵[离任版主]

Rank: 5Rank: 5Rank: 5

UID
2343857
第纳尔
17647
精华
0
互助
69
荣誉
1
贡献
278
魅力
90
注册时间
2014-12-4

骑士美德之英勇勋章[杰出会员活跃勋章]骑士美德之谦恭勋章[杰出会员财富勋章]骑士美德之奉献勋章骑士美德之仁慈勋章[杰出会员互助勋章]元老骑士勋章霸主正版勋章

鲜花(337) 鸡蛋(2)
 楼主| 发表于 2018-10-16 13:52:12 | 显示全部楼层
本帖最后由 今天手气不错啊 于 2018-10-16 13:59 编辑
vegetto 发表于 2018-10-16 13:38
补充一下:position参量在骑砍里不单单有记录位置量的用途,还可以用于存储多个与位置信息无关的但有联系的 ...

感谢补充

不错, 我也是这样想的

您需要登录后才可以回帖 登录 | 注册(Register!)

本版积分规则

Archiver|手机版|小黑屋|骑马与砍杀中文站

GMT+8, 2024-11-19 10:48 , Processed in 0.108428 second(s), 27 queries , Gzip On, MemCached On.

Powered by Discuz! X3.4 Licensed

© 2001-2023 Discuz! Team.

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