作者cjcat2266 (CJ Cat)
看板GameDesign
标题[数学] Planetary Annihilation 球形笔刷投影
时间Fri Jul 5 03:19:11 2013
最近为Planetary Annihilation实作了 球型笔刷投影
把背後的数学推导写下来跟大家分享一下 :)
http://allenchou.net/2013/07/bending-solid-geometry-in-planetary-annihilation/
(写这篇文最累的是画那些插图...)
Planetary Annihilation的随机星球生成使用了CSG这个技巧
简单来说就是把很多简单的3D模型用 联集 和 差集 的方式
建立出比较复杂的模型
我们称这些这些简单的3D模型为 "笔刷(brush)"
由於星球的半径也是随机的
我们必须於run-time将笔刷做适度的弯曲
以符合星球的曲率半径
详细数学推导请见blog本文
--
Blog
http://blog.cjcat.net
Gallery
http://cjcat2266.deviantart.com
ptt2 Board CJWorkshop
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 50.135.9.244
※ 编辑: cjcat2266 来自: 50.135.9.244 (07/05 03:19)
※ 编辑: cjcat2266 来自: 50.135.9.244 (07/05 03:20)
1F:推 wangm4a1:先推 07/05 03:25
2F:推 Bencrie: 先推 07/05 09:46
3F:推 silveriii:推 太有心了 07/05 10:38
4F:推 SoYoungBlues:推cj猫 07/05 12:53
5F:推 sorkayi:大大很有心 可惜我看不懂 = =a 07/05 14:32
6F:推 gyd: 07/05 15:12
7F:推 artpoet:推! 07/06 08:31
8F:推 Transformers:推分享 07/06 23:37
9F:推 damody:如果有 shader 把平面直接投在圆上就猛了~ 07/09 02:58
10F:→ cjcat2266:现阶段不太行,因为要考虑海拔变化 07/09 06:32
11F:→ cjcat2266:而且pathfinding需要CSG 处理之後的结果 07/09 06:34
12F:推 azureblaze:这种只需要loading时算一次的东西丢上shader反而没效率 07/09 11:00