GameDesign 板


LINE

我先说结论: 可以用Unity/UE4作出接近真实世界的物理原则 有运动定律,重力,抓地,碰撞等等 为何我这麽笃定说可以..因为我曾身为国内极少数开发竞速类 游戏的团队成员超过四年.并且已经用Ogre/unity等成功上市过超过4款赛车/摩托车游戏 不过我不是实作车辆物件的神手(神手另有他人) 我就从旁观察後 提供一点看法. 我已经离开好几年 如果记忆有谬误还请见谅.说不定 有神人组员要踢我馆(掩面) 那我也算抛砖引玉了. 先说早期没有Unity的年代,我们开发一辆车子的Component大部分只能自己来 效能耗最多的是在碰撞和贴地. 引擎/变速箱/转向等车辆物理 所耗的效能其实还好,现在电脑运算能力都很强,跑回圈跟本不是问题 效能大部分是耗在碰撞侦测(含把车子贴在地形上). 想想要把几十辆车子和物件等放在庞大的地形上 这个资料结构和演算法必须做得很好,否则会造成Search/运算时间过长 可喜可贺这现在Unity/UE都已经代劳了. 因此碰撞效能耗费这点已经不是问题.如果一个竞速游戏效能耗费是100% 的话,物理所占效能几乎都低於10%. 到最後你会发现效能只会跟场景物件 的三角形面数有绝对相关.因此到底游戏顺不顺畅 就看美术功力如何了 怎样可以场景好看面数又用的少...不过这是题外话. 在来车辆可破坏物件的部分, 你看到多数游戏一撞就掉一堆东西 但那些大部分都对车辆实际物理没有太大的影响 就是演给你看而以 我们在车辆(壳)本身预设几个结点,碰撞过程根据撞击点记录伤害 超过之後就 把该吸附在主体车架上的东西丢掉. 该物件跟车子的物理并无太大关系. 因此到底有哪些东西可以被碰掉都是预设好的. 至於撞凹那些只是车子 的美术外壳换掉. 你会想说 啊这样不太真实啦, 应该是轮胎撞破 轮圈撞坏 撞击後从小料件开始影响车的性能...如果这样就没完没了了. 基本上这类 撞击对游戏来说 都算是插曲 主要还是会把重心放在车子驾驶/游玩性能上. 回归车子本身,想要做出比较拟真或是可玩性的赛车游戏, 还是要好好的根据物理公式来作车辆的各个零件,否则玩起来只会像是轨道车 各大赛车游戏或多或少都有写自己的车辆物理物件 差别只是在物理简化程度而以 但摊开程式物理都是说的通的. 这个部分非常专业 我本身资工背景对车辆机械 所知有限. 不过我可以讲的是 你至少需要考虑的大概有下列东西 车子的行为"看起来"才会比较真实(这里先不讨论你要用什麽component来作) 1.引擎- 引擎的转速(含怠速,超转),引擎惯量 引擎扭力曲线: 几转对应的扭力 齿轮箱: 手/自排换档,换档油门,齿轮比等 2.转向/加速- 纵向滑移率(Force/Slip Ratio) 轮胎滑移率(Slip Ratio/Force Ratio)-在这边可以实作出前驱後驱车 转向物理量- 前後轴距/重心/质心高度/惯量等 转向辅助系统-TCS Steer Angle(VR/Angle) 转向角 侧滑(车身/轮胎) 3.悬吊- 弹簧悬吊阻尼等常数 4.碰撞- 基本上只要设定好长宽高,质量,外型等,Unity都会帮你作,但如果 想自行控制碰撞後反应就很难调了,这个部份我们有自己写碰撞反应, 没有用内建的. 5.其他- 可能会用的其他系统,如Boost/跟随前车汽流/力回馈方向盘等 後话: 这麽多东西到底要作多久啊?根据以前经验,配合2~3个神手(我不是..) 2~3个月就可以有满像样的汽车物理. 不过後续难/麻烦的地方反而在 参数调整. 你的客群是谁,你的游戏想要玩什麽, 基本上越真实的东西 玩家就越少. 但他们也会更忠实(反向来说是挑剔). 而且所谓真实 你其实也很难验证. 游戏制作成本有限(包含时间跟资金) 根本不可能去搞台 真车来验他的各向参数.(当然你是跑车浪漫旅的游戏制作团队例外) 也很少人去开过真实的各种跑车. 你所谓真实的感觉 很多时候也只是玩过那些 号称比较真实的游戏产生的错觉. 何况如果要体验更接近真实的游戏驾驶 你还得买专业的游戏车架 方向盘等等. 因此看来看去 能作出号称真实性很高的 赛车游戏真的很少了. 现今多半的竞速游戏很多时候也都是有点唬烂.. 但这也是理想与现实之间一种妥协的结果...扯远了, 如果是学生时代当然可以尽管时做看看好像满真实的车辆物理, 至少很多人都曾经用过这类的游戏引擎作出来过了,绝对不是幻想. ※ 引述《oas (电动吉他手)》之铭言: : 问题:如题 : 定义:适合:有效率 : 拟真性:游戏内物件运行接近真实世界物理原则 : 物件:轮胎 车轴 车架 车壳 引擎 变速箱...等赛车组成原件 : 物理原则:运动定律 重力 抓地力 碰撞 变形 风阻 气流 热力 天气...等 : 前提:1)先求有物理性 後求画面 : 2)单纯探讨Unity、UE4或其他类似...等免费工具 有效率 之可行性 : 执行内容:庞大 游戏物理公式建立和车辆特性数据参数取得 : 对象:喜爱拟真性赛车玩家 : 声明:1)讨论目的非否定现有游戏引擎 能够充分利用、发挥工具才是关键 : 2)拟真性为一赛车游戏类别 非排斥或不玩其他非拟真性之赛车游戏 : 参考:IndyCar Racing 2 (1995) https://goo.gl/d1dazZ : Richard Burns Rally (RBR)(2004) https://goo.gl/1aPvAO : https://goo.gl/Nnj2ZB : rFactor 1 (2005) https://goo.gl/nCnShL https://goo.gl/M6NHh5 : rFactor 2 (2013) https://goo.gl/h5g2su https://goo.gl/SThDsN : https://goo.gl/6kJUVp https://goo.gl/93vWyU : Raceroom (2013) https://goo.gl/pKfSy3 https://goo.gl/5rSC5o : iRacing (2008) https://goo.gl/lUwJEm https://goo.gl/h2BViN : 另外车体损害模型 BeamNG.drive (2015) https://goo.gl/0LxJn4 : Next Car Game (2014) https://goo.gl/K776fh : 少数模拟变形地面与弹性车体 Spintires (2014) https://goo.gl/5t3ut2 : 想法:非要争论甚麽 只是希望讨论这个题目 : 感谢各位! : 以下为 #UNITY飞机不会飞# 原文之下的 推文讨论 : ============================================================================== : 推 oas: 借题问一下 如果会写程式码 是否也可用unity也写出近真实的 10/20 17:21 : 推 oas: 物理模拟(如赛车物理) 而做出拟真的赛车游戏如RBR rFactor? 10/20 17:23 : 推 bantime: 理论上可以,不论效能状况下 10/20 18:58 : 推 oas: 喔~ 对 还有效能问题~ 原来... 那是哪些因素会影响效能? 10/20 20:09 : → bantime: = = 很多因素啊 这要我怎麽讲 10/22 00:16 : 推 gino0717: 随便讲一个,如果你那个赛车的model做得很漂亮,他会跑得 10/22 01:05 : → gino0717: 很慢很慢 10/22 01:05 : 推 osanaosana: 应该说是model的面数太高,光影特效太多之类... 10/22 01:41 : 推 oas: 那unity是不利於这种制作(高面数,特效)吗? 另外 我想的是 10/22 08:38 : → oas: 车辆物理性第一(轮胎摩擦力.车辆惯性.车体刚性.等) 画面其次 10/22 08:42 : → oas: 任何引擎都可做吗? 如Unity UE4...等 还是说会有各位说的效能 10/22 08:44 : 推 oas: 问题? 其不过我看各强调赛车物理性的游戏都用自家开发的引擎 10/22 08:51 : → oas: 居多 rfactor,raceroom,iRacing,RBR,近期Asseto Corsa, P.Car 10/22 08:54 : → dreamnook: 比较特定领域导向的话Unity可能不太适合(个人认为) 10/22 08:56 : → oas: 应该都是~ 我原以为效能问题是在说处理这些物理运算的部分~ 10/22 08:57 : → dreamnook: 但你可以先试试看 unity有standard assets可以下载 10/22 08:58 : → dreamnook: 里面有赛车的prototype可以用 10/22 08:58 : → dreamnook: 我现在转纯indie的关系暂时不会用到太细致的物理效果 10/22 08:59 : → dreamnook: 或许unity有办法 只是还没有团队弄出来而已 10/22 08:59 : → dreamnook: 目前物理运算最夸张的我觉得应该是next car game 10/22 09:00→ dreamnook: 不过这家也是自己写引擎就是... 10/22 09:00 : 推 oas: 对对 正要提到next car game跟BeamNG.drive这两家的车体刚性 10/22 09:03 : → oas: 不过这两家在车辆操控的动态 感觉还不到拟真(模拟器)的阶段 10/22 09:07 : 推 Eric0605: unity当然可以做赛车 他本身就有demo是赛车了 10/22 19:03 : → Eric0605: 车辆物理用的效能不高啦 10/22 19:03 : → Eric0605: 还有国内有公司游戏团队早就用unity再做了 10/22 19:04 : → Eric0605: 游戏都商业化至少三年了 而且手机也有很多赛车游戏用 10/22 19:05 : → dreamnook: 如果要走到细致的话应该不会拿手机考虑… 10/22 20:03 : 推 oas: unity的赛车Demo有下载玩过 不过跟拟真物理还差~~~~~~蛮远的~ 10/22 21:47 : 推 oas: 还有 "车辆物理用的效能不高" 是甚麽意思? 程式码很少 还是? 10/22 21:51 : 推 lzainside: 回一下赛车的,要有真实扭力拉力加速度大概都不是问题 10/23 02:38 : → lzainside: ,只是要去不断尝试抓到真实感吧,毕竟是游戏,真实感 10/23 02:38 : → lzainside: 是创造出来的,不见得就是按照真实世界的公式或法则, 10/23 02:38 : → lzainside: 再来是效能是根据你要发布的平台,pc当然就能比较挥霍 10/23 02:38 : → lzainside: ,行动装置就必须斤斤计较,影响效能的地方很多,像是 10/23 02:38 : → lzainside: 过於浪费的粒子系统,过多的点光源,没有在camera但也 10/23 02:38 : → lzainside: 同步运算的资源,过高三角面的模型等等诸如此类原因都 10/23 02:38 : → lzainside: 会影响,有些可以透过良好的程式码或是概念,技术去避 10/23 02:38 : → lzainside: 免,例如靠uv贴图绘制出立体感取代高模等等 10/23 02:38 : → dreamnook: 创造真实感 一台车要7000万(x) 10/23 07:41 : 推 gino0717: 运算都放在钱包物理上惹 10/23 08:14 : → Eric0605: 真实车辆物理碰到东西就停下来 甩尾马上降速怎麽玩? 10/23 10:53 : → Eric0605: 车辆物理公式和碰撞大部分都经过某种程度的简化 10/23 10:53 : 推 oas: 钱包物理 XD d大也很幽默~ 我的前提是 目标:成品是模拟器 10/23 15:45 : → oas: 问题:免费的引擎如unity,ue4 可否做成(有效率)拟真赛车游戏( 10/23 15:48 : → oas: 近真实物理)? 以目前看来多是打造自有引擎为多 所以想问问看 10/23 15:50 : → oas: 以目前大大回答是:不是问题, 我的理解:要会写code+输入近真实 10/23 15:54 : → oas: 物理公式。喔对还有 平台是PC。我有说过画面可以先不是优先 10/23 15:59 : → oas: 以目前现况 画面都不错了 可是车辆动态拟真性就有高有低 10/23 16:02 : → oas: 再来要说的是 游戏拟不拟真没有问题 模拟器也没比较好、高级 10/23 16:05 : → oas: 是要看玩家喜好跟游戏客群~ 我两种都喜欢 在此前提下 为何好 10/23 16:08 : → oas: 玩不可加拟真? 是否可透过unity,ue4+程式功力达成? 我想市面 10/23 16:12 : 推 oas: 上较少拟真是:研发拟真=$$和市场小。还有赛车vs.模拟汽车 10/23 16:17 : → oas: 以现实中物理不像是 "碰到东西就停下来 甩尾马上降速" 这样 10/23 16:18 : → oas: 所以 如果游戏可以拟真近似真实 应该不会有不可玩的问题 10/23 16:19 : → oas: 世界上任何一赛车赛事没有碰到东西就停下来(致命撞墙除外) 10/23 16:21 : 推 oas: 然後甩尾是驾驶手法是一种物理现象 在低速湾没有降速问题(因 10/23 16:24 : → oas: 本来就低速)但透过後轮锁死+车尾惯性让车辆可以快速转向 所以 10/23 16:26 : → oas: 拉力赛事会用 另一种专门甩尾的赛事D1 也可以看看 这些都拟真 10/23 16:27 : → oas: 的话应该没有怎麽玩的问题 只是客群方向的问题~ 10/23 16:30 : → oas: 我没有冒犯和挑战的意思 或许我的问题是理想化或说不清楚 10/23 16:32 : 推 oas: 我对做赛车模拟器的理解是:如果把物理定律写成程式码 建构出 10/23 16:38 : 推 oas: 模拟世界物体物理运作的规则来建构一个游戏引擎。(多打了如果 10/23 16:43 : 推 oas: 譬如:牛顿运动定律跟自由落体写入游戏引擎 撇除做游戏来说 10/23 16:50 : → oas: 在程式测试上 如果有考虑到重力 空气阻力等参数 结果应该可以 10/23 16:51 : → oas: 近现实数据吧? 如果这样的话 应该要调整的地方不多吧? 10/23 16:56 : → oas: 不过 要全面模拟一辆车的话 或许如大大讲的上千万或上亿~ 10/23 17:03 : 推 oas: 毕竟 要取得数据的零件太多了~ 10/23 17:09 : 推 xx1234561: 我觉得你可以开一串讨论 不然这篇太长了.. 10/23 19:18 : → dreamnook: 所以我才说你可以先做看看XDDDDDDD 10/23 19:48 : 推 oas: 好的 感谢以上各位!!! 10/23 22:21 : 推 Eric0605: oas你讨论的东西已经偏向企划了,游戏拟真当然可以玩 10/24 00:29 : → Eric0605: 但是拟真的东西就是没那麽好玩 竞速游戏讲就"速度" 10/24 00:30 : → Eric0605: 轻轻擦到墙 撞到东西 过弯 真实世界中都会/要大减速 10/24 00:30 : → Eric0605: 当然有很多赛车游戏就是这麽拟真 例如GT系列 10/24 00:33 : → Eric0605: 对应的玩家就需要很hardcore 一般玩家很难轻易上手 10/24 00:34 : → Eric0605: 老实说 要作真实的东西说不定还比较简单 10/24 00:35 : → Eric0605: 物理公式就摆在那边 按照一个一个component开发出来 10/24 00:35 : → Eric0605: 不会遥不可及, unity绝对写得出来 10/24 00:36 : → Eric0605: 但後续参数调整的地方才是困难之处 10/24 00:36 : → Eric0605: 你的目标客群玩家是什麽 如何把车辆调成他们喜欢的样子 10/24 00:37 : 推 Eric0605: 另如果要模拟真实世界 调整的参数才多了 10/24 00:39 : → Eric0605: 拿碰撞来说 你车子长宽高质量重心硬度等都影响碰撞反应 10/24 00:40 : → Eric0605: 引擎内部齿轮箱 扭力曲线 车辆悬吊 轮胎摩擦 TCS ABS.. 10/24 00:42 : → Eric0605: GT系列如果接上方向盘还可以模拟力回馈 10/24 00:43 : → Eric0605: 你车辆是後驱 前驱 四驱 转向能力 空气阻力 10/24 00:45 : → Eric0605: 如果跟随前车 前车车辆汽流可以帮你加速 10/24 00:45 : → Eric0605: 等等 不胜枚举 10/24 00:46 : → Eric0605: 专业的赛车游戏开发团队通常都会为了调整另外开发TOOL 10/24 00:47 : → Eric0605: 所以 千万别再说 调整模拟真实世界中的车辆参数很少了 10/24 00:48 : → dreamnook: Eric从这边一坨推文来看我觉得你对car game很热衷 10/24 01:24 : → dreamnook: 但让oas他/他们去硬干其实是没什麽关系的 10/24 01:24 : → dreamnook: 在开发过程中会遭遇到很多发想时没注意的东西 10/24 01:25 : → dreamnook: 要嘛突破, 要嘛拐湾, 要嘛跳过 但总是做了会比较好XD 10/24 01:26 : → dreamnook: 从程式方面考虑 我会觉得在Unity用Component写物理.. 10/24 01:27 : → dreamnook: 好像有一点浪费PhyX...= =||| 10/24 01:31 : 推 oas: 哇 e大没错 你说的参数就是我所了解的拟真赛车游戏 而且也让 10/24 01:33 : 推 oas: 我知道一般游戏引擎就可写~ 这些参数我都知道 所以我才说要 10/24 01:36 : → oas: 取得数据的零件太多~ 我所说的要调整的参数不多是指 物理公式 10/24 01:38 : → oas: 写成程式输入後 把测试参数输入後 所得的结果应该跟现实世界 10/24 01:40 : → oas: 测出来的数据会差不多 所以公式本身就不用在程式码上多做调整 10/24 01:42 : → oas: 而不是做拟真赛车游戏本身不用很多参数~ 就是要模拟的物件 10/24 01:45 : → oas: 之多 才在想是否那些游戏是否用自有引擎(工具)才办得到~ 10/24 01:47 : 推 oas: 另外 拟真好不好玩 真的要看客群 但客群真的很小 (=>我) 10/24 01:50 : → oas: 你可以看看 RBR 2004出来的拉力赛车 现在还有人办赛事联盟 10/24 01:53 : → oas: 也是至今公认最拟真的拉力赛车游戏 http://goo.gl/rRdyNI 10/24 01:56 : 推 oas: 这是他们开发引擎损害的概念~ 然後iRacing也有几万的订阅 10/24 02:03 : → oas: 我另外开一篇好了 真的感谢各位大大~ 10/24 02:05 --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.134.238.135
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/GameDesign/M.1445769378.A.88C.html ※ 编辑: Eric0605 (220.134.238.135), 10/25/2015 18:39:17
1F:推 oas: 天哪 太屌了 只能先推了~ 所以说工具是看人、看目的的~ 10/25 18:56
2F:推 oas: 追根究柢还是要看"拟真"的物理要涉入多深 来选择开发方式~ 10/25 19:01
3F:→ dreamnook: 先做下去吧XD 很快就会知道问题在哪里 10/26 10:09
4F:推 LayerZ: 客群那边真的是金玉良言.. 10/26 11:35
5F:推 FukadaKyoko: 这篇有点杀XD 10/26 18:53







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:e-shopping站内搜寻

TOP