🔥 PTT.BEST 熱門專區 💬 八卦 Gossiping 😊 希洽 C_Chat 💰 股票 Stock 🏠 房屋 home-sale 🏀 美國職籃 NBA ⚾ 棒球 Baseball 👛 省錢 Lifeismoney 🚗 汽車 car 😡 政黑 HatePolitics 💻 電蝦 PC_Shopping 🥰 韓星 KoreaStar ✨ 英雄聯盟 LoL 🍿 電影 movie 🪖 軍事 Military 📡 通訊 MobileComm 🏀 台籃 basketballTW 🍼 寶媽 BabyMother 🇯🇵 日旅 Japan_Travel 🏭 科技 Tech_Job 👧 女孩 WomenTalk 👻 媽佛 marvel 💳 卡版 creditcard 👉 NS NSwitch 👉 PS5 PlayStation 👉 大氣 TY_Research 👉 婚姻 marriage 👉 台南 Tainan 👉 台中 TaichungBun 👉 Steam Steam 👉 高雄 Kaohsiung 👉 羽球 Badminton 👉 超商 CVS 👉 米哈遊 miHoYo 👉 iOS 👉 兄弟 Elephants 👉 日劇 Japandrama 👉 玄幻 CFantasy 👉 ES e-shopping 👉 WOW 👉 遊戲交易 Gamesale 👉 4X BaseballXXXX 👉 Lakers 👉 韓劇 KoreaDrama 👉 汽車買賣 CarShop 👉 機車 biker 👉 新竹 Hsinchu 👉 美保 BeautySalon 👉 串流 OTT 👉 歐美影集 EAseries 👉 手機交易 mobilesales 👉 健身 MuscleBeach 👉 MacShop 👉 Lions 👉 FGO FATE_GO 👉 中劇 China-Drama 👉 數位貨幣 DigiCurrency 👉 暗黑 DIABLO 👉 實習教師 studyteacher 👉 航空 Aviation 👉 藝文票券轉售 Drama-Ticket 👉 韓綜 KR_Entertain 👉 美妝 MakeUp 👉 速食 fastfood 👉 手錶 watch 👉 體適能 FITNESS 👉 攝影 DSLR 👉 Headphone 👉 嘻哈 Hip-Hop 👉 轉珠 PuzzleDragon 👉 美食 Food 👉 蔚藍 BlueArchive 👉 數位相機交易 DC_SALE 👉 筆電蝦 nb-shopping 👉 軟工 Soft_Job 👉 汪踢 Wanted 👉 台綜 TW_Entertain 👉 坂道閒聊 SakaTalk 👉 貓咪 cat 👉 日GO BabyProducts 👉 TypeMoon 👉 MLB 👉 職場 Salary 👉 臺劇 TaiwanDrama 👉 海賊王 ONE_PIECE 👉 PMGO PokemonGO 👉 國營 Gov_owned 👉 碧航 AzurLane 👉 家電 E-appliance 👉 布蘭德 Brand 👉 DMMG DMM_GAMES 👉 贈送 give 👉 神魔 ToS 👉 銀行服務板 Bank_Service 👉 原創 YuanChuang 👉 期權 Option 👉 重機 SuperBike
→ spfy: 雖然有人解釋但我還是想不通倒轉要怎麼實作 不可能把林克附 → spfy: 近所有物件的軌跡都長期記錄起來吧? 記錄一個物件在空間中的姿態(pose: 包含位移跟旋轉) 一般是用一個4x4的浮點數(float: 有小數點的數字, 4 byte)矩陣 也就是說紀錄一筆位置, 記憶體大小是4x4x4=64 byte 假設他每秒記錄30筆pose (30fps), 並假設每個可移動物件都紀錄10秒 則一個物件的時間倒轉記錄是64x30x10=19.2 kbyte 超過一定距離的物件不能時間倒轉, 甚至都不會載入 所以假設他同時間最多有1000個物件會被載入(實際上應該沒這麼多) 他用來存時間倒轉資訊的總記憶體用量在每個時刻都不會超過19.2mbyte 由此可知時間倒轉其實負擔並不大 對於一個現代的系統來說, 19mb通常是可以忽略的大小 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 39.15.2.1 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/C_Chat/M.1684727690.A.120.html
w2776803: 這個學校有教嗎 05/22 11:57
y2468101216: 推專業 05/22 11:58
hohiyan: 老任厲害的地方在其他物件都還是正常運行,而且會跟倒轉 05/22 11:58
ronga: 推專業,紀錄座標真的耗的資源還好 05/22 11:59
hohiyan: 的那個東西產生各式互動 05/22 11:59
w2776803: 感覺是業界人士 05/22 11:59
storewater: 你還要考慮朝向跟旋轉吧,雖然理論上也不會差太多 05/22 11:59
tv1239: 是說這系統任天堂不是有申請專利? 記得有公開作法 05/22 11:59
storewater: 喔 沒事看錯 05/22 11:59
w2776803: 可以倒轉時光同時還能用究極手根本神 05/22 11:59
WiLLSTW: 旋轉基本上都是記錄在那個矩陣內了 05/22 11:59
hank81177: 可以究極手+倒轉+通天術同時使用 05/22 12:01
WiLLSTW: 比較麻煩的是每frame所有物件可能都要把矩陣資料push進去 05/22 12:01
bestadi: https://i.imgur.com/faB8YRD.gif 倒轉引力+究極手 05/22 12:03
speedingriot: 倒轉的物體還要維持物理邏輯就爆炸了 05/22 12:03
hylkevin: 朝向跟旋轉就是pose喔,用一個轉換矩陣描述。或者另一種 05/22 12:04
hylkevin: 方法是用translation跟quaternion(四元數)兩組vector(3+ 05/22 12:04
hylkevin: 4個浮點數)描述。但這兩種東西其實是等價的,在這邊用轉 05/22 12:04
hylkevin: 換矩陣程式寫起來是比較簡單的。 05/22 12:04
w2776803: 聽起來很簡單實際上很難設計吧 05/22 12:08
ms0302610: 我也是這麼想的(裝 05/22 12:10
WiLLSTW: 不過問題還是在發動倒轉物件互動上的設計 05/22 12:11
hylkevin: to 13F: 要把資料push可以用一個長度30x10的circular qu 05/22 12:12
hylkevin: eue來存,但因為要先進後出,所以要把它當stack用。 05/22 12:12
tv1239: 能夠互動還不出大bug真的是這系統最可怕的地方 05/22 12:12
nisioisin: 有別的遊戲在做過倒轉嗎? 05/22 12:13
hylkevin: to 20F: 這邊只討論軌跡資料儲存,他怎麼呈現,物理怎麼 05/22 12:13
hylkevin: 運算要看有沒高手解答。 05/22 12:13
cloud0607: 單獨物件位移倒轉的沒印象 但整體場景時間倒轉機制的有 05/22 12:14
tv1239: 360時代有一片Braid 有各種時間相關的技能 05/22 12:14
cloud0607: 確實 軌跡紀錄不算負擔太大的東西 但跟其他系統/物理 05/22 12:14
kiedveian: 每frame推應該拉個queue放一丟一就好 05/22 12:14
Slas: Braid記得是全畫面倒帶那種 05/22 12:14
cloud0607: 疊加就是很可怕的東西了 05/22 12:14
cloud0607: Braid啊 那可是把時間要素玩出花來的神作了 05/22 12:15
WiLLSTW: 喔喔用Circular Queue來存的確是可以降低不少效能消耗 學 05/22 12:15
WiLLSTW: 到了 05/22 12:15
tv1239: Braid全場景倒轉 不過記得主角還是可以正常活動? 太久沒玩 05/22 12:15
Bugquan: 一個是倒轉的物體有限,另一個是範圍,基本就在林克的可 05/22 12:16
Bugquan: 視範圍,所以其實沒多少 05/22 12:16
Pegasus99: 問就是時間鉗型攻擊(?) 05/22 12:16
WiLLSTW: 另外其實可以觀察到 林克沒有觸碰到的物件 實際上應該是 05/22 12:17
WiLLSTW: 沒在持續的在寫入資訊 05/22 12:18
sniperex168: 大部分有倒轉的遊戲都全畫面,不然就是設計好的固定 05/22 12:18
sniperex168: 位置倒轉 05/22 12:18
s921619: 推專業 不懂程式的我完全看不懂討論 XD 05/22 12:19
w2776803: 這遊戲可以隨時隨地倒轉調位置附加,這種無限制的空間怎 05/22 12:19
w2776803: 麼定位超好奇的 05/22 12:19
willytp97121: 推專業 05/22 12:21
cn5566: 其實難的不是倒轉本身 而是倒轉中可以用究極手 通天 05/22 12:21
cn5566: 倒轉中的物件也有物理法則和其他物件互動 05/22 12:22
cn5566: 例如拿兩顆石頭一根木頭組成的東西在空中轉 05/22 12:22
cn5566: 然後倒轉 就能把在軌跡中晃的西諾克斯打爛這件事情 05/22 12:22
WiLLSTW: 倒轉中本體似乎無視物理法則 但互動的物件仍然會被物理系 05/22 12:25
chrisjeremy: 倒轉中還能維持物理運作是最難的 難以想像開發期間發 05/22 12:25
chrisjeremy: 生多少的bug 05/22 12:25
hylkevin: 另外要最佳化完全可以兩三幀或更多幀才存一筆資料,其他 05/22 12:25
hylkevin: 幀的pose用內插法算,人類肉眼很難看出差別。實際遊戲使 05/22 12:25
hylkevin: 用時間倒轉時可以觀察到物件在時間軸上有很多個節點,說 05/22 12:25
hylkevin: 不定他真的沒有全部存,而是用內插法補。 05/22 12:25
WiLLSTW: 統影響 這遊戲不管甚麼東西 只要力量*重量夠大就能造成 05/22 12:25
cloud0607: 就是這些看似簡單系統之間的互相疊加效果太有趣才可怕 05/22 12:25
WiLLSTW: 傷害 05/22 12:25
WiLLSTW: 也因為這個特性可以把東西黏上去再倒轉 只要不要超過黏膠 05/22 12:26
WiLLSTW: 的支撐上限(如果力矩不對黏膠是會斷掉的)就能帶著東西走 05/22 12:27
cloud0607: 這種叫做Emergent gameplay 薩爾達在設計上的頂峰領域 05/22 12:27
cloud0607: 然後這還是運行在一台機能有限的掌機 遊戲容量不到20G 05/22 12:28
Bencrie: 用 4x4 沒錯啊,只記旋轉是可以用四元數 05/22 12:33
tv1239: https://tinyurl.com/mpm9vry5 當初申請的內容 05/22 12:35
jackyT: 玩起來應該沒紀錄動量跟速度 所以應該只記錄transformat 05/22 12:40
jackyT: ion沒錯 05/22 12:40
jackyT: 難的在一拖拉庫系統混在一起的時候怎麼迴避cache miss 05/22 12:41
Bugquan: 應該是沒有,因為中間黏了東西,照樣是回去原來的位置 05/22 12:43
WiLLSTW: 算動量我就不能年呀哈哈在木柴上了 05/22 12:45
shi0520: 原po說到重點 不需每筆資料都記錄 只需選擇一區間再用cub 05/22 12:46
shi0520: ic spline去推估區間內數值 出來結果一樣平滑 05/22 12:46
strlen: 容量還好 遊戲容量會大基本都是材質包語音包這些 程式沒差 05/22 12:48
spfy: 感謝解釋 我這種拉基工程師實在讚嘆 05/22 13:07
crazylin924: 王國之淚已經導論到這種層面了嗎…(讚嘆 05/22 13:32
dennisN: 物理沒做好其他東西都是負加成 一代打磨的很精緻了二代才 05/22 13:45
dennisN: 有辦法這樣玩 05/22 13:45

😊 希洽 C_Chat 版:熱門文章

😊 希洽 C_Chat 版:更多文章