免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

從Lemmings看確定性仿真:狀態(tài)機(jī)、多角色并發(fā)與可回放調(diào)試

從Lemmings看確定性仿真:狀態(tài)機(jī)、多角色并發(fā)與可回放調(diào)試 Lemmings 是我童年圍觀最久的游戲之一小小的綠色角色從傳送門魚貫而出遇到墻就轉(zhuǎn)身掉下懸崖會(huì)摔碎運(yùn)氣好就能走進(jìn)出口。那時(shí)我只覺得它設(shè)計(jì)得既好笑又難。后來自己開始寫程序才反應(yīng)過來Lemmings 并不是單純的益智游戲它本質(zhì)上是一道隱藏得很好的工程題。題面看起來只是幾項(xiàng)規(guī)則真正困難的是讓一百多個(gè)沒有任何智能的角色在同一套物理規(guī)則下穩(wěn)定運(yùn)行還要保證它們的行為可預(yù)測(cè)、可挽回、可驗(yàn)證。這個(gè)認(rèn)知轉(zhuǎn)變很有意思。如果你準(zhǔn)備去復(fù)刻一個(gè)簡(jiǎn)化版 Lemmings或者你正在做類似的群體仿真、批量任務(wù)編排、多角色狀態(tài)管理你會(huì)發(fā)現(xiàn) Lemmings 的價(jià)值比大多數(shù)所謂“AI 游戲”更大。它真正訓(xùn)練的是在確定性系統(tǒng)下讓大量淺規(guī)則狀態(tài)機(jī)系統(tǒng)并行卻不崩潰的調(diào)試能力。換成今天的工程語言就是一批無狀態(tài)或有小狀態(tài)的 worker在共享資源、全局時(shí)鐘和局部判斷里共同推進(jìn)??雌饋硎怯螒?qū)嶋H上是最早給我上并發(fā)與狀態(tài)管理課的項(xiàng)目之一。1. Lemmings 表面上是“可愛的迷宮游戲”實(shí)質(zhì)上是一道隱藏的并發(fā)題很多第一次接觸 Lemmings 的人會(huì)下意識(shí)認(rèn)為它是一個(gè)尋路游戲。玩時(shí)間長(zhǎng)了會(huì)發(fā)現(xiàn)你并不擁有上帝視角下的路徑規(guī)劃能力你也沒有辦法給某個(gè)旅鼠下達(dá)一條“從這里走到出口”的指令。你能做的是在正確的時(shí)間對(duì)正確的角色使用有限的技能讓它改變自己所在區(qū)域的空間結(jié)構(gòu)或者改變自身的持續(xù)狀態(tài)。這種設(shè)計(jì)把一個(gè)問題拆成了兩個(gè)層面單個(gè)角色只需要執(zhí)行極少數(shù)局部判斷真正難的是在大量角色、多段地形、有限技能之間做資源分配。你越是想通過“給每個(gè)小人物裝上大腦”來解決越容易陷入不可控的局面。1.1 單個(gè)旅鼠的行為其實(shí)非常簡(jiǎn)單一個(gè)最基礎(chǔ)的旅鼠在沒有任何技能介入時(shí)大致只遵循幾個(gè)規(guī)則從出生口出現(xiàn)后一直向左或向右走前方有阻擋物轉(zhuǎn)身腳下的地面消失進(jìn)入下落落回地面繼續(xù)走掉到某個(gè)危險(xiǎn)高度死亡走到出口位置記錄并消失。這些規(guī)則甚至可以壓縮成一個(gè)更樸素的描述不斷檢查前方和下方根據(jù)碰撞結(jié)果改變方向或狀態(tài)。沒有記憶沒有策略沒有對(duì)整張地圖的理解也不需要知道出口在哪里。但這個(gè)極簡(jiǎn)大腦并不妨礙游戲呈現(xiàn)出一種“它們好像有自己的目標(biāo)”的錯(cuò)覺。這恰恰是游戲設(shè)計(jì)的厲害之處。當(dāng)一個(gè)角色掉下懸崖時(shí)你會(huì)覺得它慌不擇路當(dāng)隊(duì)伍走到死角集體轉(zhuǎn)身時(shí)你會(huì)覺得它們很整齊當(dāng)某個(gè)旅鼠被困在一個(gè)坑里來回走你會(huì)為它著急。這些情緒全部來自一個(gè)小規(guī)則和大世界之間的反差而不是角色真的具備復(fù)雜情感。1.2 難度來自角色之間的“一起”而不是個(gè)體智商把單個(gè)旅鼠的代碼寫出來大約只需要幾十行狀態(tài)判斷。真正讓它變得復(fù)雜的是三個(gè)額外變量角色數(shù)量會(huì)迅速膨脹技能數(shù)是有限的且每種技能的作用路徑不同玩家只能從全局視角觀察無法同時(shí)精確干預(yù)每一個(gè)角色。這幾乎就是一個(gè)典型的批量任務(wù)系統(tǒng)。單個(gè)任務(wù)很容易完成難的是同時(shí)運(yùn)行一千個(gè)任務(wù)時(shí)你還要保證失敗不會(huì)擴(kuò)散資源不會(huì)枯竭某個(gè)環(huán)節(jié)的重復(fù)執(zhí)行不會(huì)污染后續(xù)結(jié)果。你在 Lemmings 里體會(huì)到的“手忙腳亂”本質(zhì)上和運(yùn)維一個(gè)高并發(fā)任務(wù)池的焦慮非常接近。所以我的主判斷是Lemmings 并不是益智游戲里的“尋路難題”它更像是把一個(gè)完整的多智能體仿真系統(tǒng)壓縮到了像素地圖上。如果你用“我該怎么給角色規(guī)劃路徑”的思路去做它大概率只做到一半就會(huì)卡住如果你用“我該怎么穩(wěn)定地模擬一群人”的思路去做反而容易一路推進(jìn)下去。2. 先放下“AI”這個(gè)詞把它理解成一套確定性仿真系統(tǒng)這里特別容易踩到一個(gè)思維陷阱。當(dāng)你聽說 Lemmings 里有很多角色自主行動(dòng)時(shí)第一反應(yīng)往往是“這里需要一個(gè) AI 模塊”然后再去搜索行為樹、狀態(tài)機(jī)、尋路算法。但 Lemmings 的趣味和復(fù)雜度其實(shí)在 AI 層之下。它不是智能決策驅(qū)動(dòng)的游戲而是物理規(guī)則和狀態(tài)轉(zhuǎn)換驅(qū)動(dòng)的游戲。把鏡頭拉到代碼層面你看到的更像是一個(gè)低速物理引擎外加一組狀態(tài)標(biāo)記。2.1 全局 Tick 是這一切的地基要讓一百個(gè)小角色看起來像在一個(gè)世界里有規(guī)律地生活第一步不是寫 AI而是先定一個(gè)全局時(shí)鐘。所有角色在同一批 Tick 里推進(jìn)而不是每個(gè)角色自己持有一個(gè)與幀率相關(guān)的計(jì)時(shí)器。原因很樸素如果你的更新邏輯綁定在渲染幀率上今天你的電腦跑 60 幀明天跑 144 幀角色摔落的速度、轉(zhuǎn)身的時(shí)機(jī)都會(huì)發(fā)生變化。單角色還能忍一旦有一百個(gè)角色疊加任何一個(gè)優(yōu)先級(jí)低的任務(wù)被幀率干擾都會(huì)產(chǎn)生肉眼可見的異常。常見實(shí)踐是使用固定時(shí)間步長(zhǎng)。無論是游戲引擎中的 fixed update還是自己寫的 simulation loop都要保證每次邏輯更新消耗相同的時(shí)間量。這樣決定性的時(shí)間戳才能穩(wěn)定下來。一個(gè)簡(jiǎn)化版本的程序循環(huán)大致長(zhǎng)這樣while running: while accumulator fixed_time_step: update_world(fixed_time_step) accumulator - fixed_time_step frame_start time.time() draw() accumulator min(time.time() - frame_start, max_frame_time)如果底層的 update_world 不依賴隨機(jī)數(shù)也沒有浮點(diǎn)不確定性那么同一份初始數(shù)據(jù)、同一組操作順序得到的結(jié)果就應(yīng)該是確定的。這個(gè)確定性是所有回放、調(diào)試、錄像功能的基礎(chǔ)。2.2 碰撞檢測(cè)決定了行為而不是“想不想走”在 Lemmings 風(fēng)格的游戲里一個(gè)角色向左走還是向右走不取決于“策略”而取決于前方一路看過去是否安全。它們的行為更像一個(gè)帶傳感器的小機(jī)器人前方有墻轉(zhuǎn)身腳下沒有支撐開始下落。這種局部特性的價(jià)值在于整個(gè)世界里沒有集中式大腦在管理每一個(gè)角色的目標(biāo)任何一個(gè)角色都只需要讀取本地一小塊地圖的信息。這大大簡(jiǎn)化了并行難度。你可以把世界當(dāng)成一個(gè)只讀地圖角色們只是各自從地圖上采樣再輸出自己的位置和狀態(tài)變更。用類似這樣的狀態(tài)機(jī)已經(jīng)可以做大量事情type LemState walk | fall | block | dig | float; interface Lemming { x: number; y: number; vx: number; vy: number; dir: 1 | -1; state: LemState; } function updateLemming(lem: Lemming, map: Map) { switch (lem.state) { case walk: const frontX lem.x lem.dir * walkSpeed; const frontBlocked map.isSolid(frontX, lem.y); const groundBelow map.isSolid(lem.x, lem.y 1); if (!groundBelow) { lem.state fall; } else if (frontBlocked) { lem.dir -lem.dir; } else { lem.x frontX; } break; case fall: lem.vy gravity; lem.y lem.vy; const hasGround map.isSolid(lem.x, lem.y); if (hasGround) { if (lem.vy splatThreshold) { world.remove(lem); } else { lem.state walk; } } break; } }這里最重要的一點(diǎn)是技能也不能繞過狀態(tài)機(jī)獨(dú)立行動(dòng)。一個(gè)“挖掘者”并不是新增了一個(gè)實(shí)時(shí)計(jì)算路徑的線程而是被玩家觸發(fā)后把自身狀態(tài)從“walk”切到“dig”再在持續(xù)一段時(shí)間內(nèi)改變地形檢測(cè)的結(jié)果。2.3 技能只是“外部事件”不是角色長(zhǎng)出來的新大腦在編碼上技能系統(tǒng)往往被誤做成“一旦賦予技能角色就變得很聰明”。更合理的做法是技能只是給角色組件掛上一個(gè)暫時(shí)的行為標(biāo)簽。比如挖掘者就是讓自己持續(xù)消除前方障礙架橋者就是在固定步數(shù)里往腳下鋪設(shè)一塊方塊轟炸者則是倒計(jì)時(shí)結(jié)束后把周圍一定區(qū)域炸開并把自身從狀態(tài)機(jī)里移除。這些技能可能由玩家在任意時(shí)刻觸發(fā)。這意味著你的系統(tǒng)里需要有一個(gè)“外部指令隊(duì)列”玩家點(diǎn)擊屏幕上的某個(gè)旅鼠選擇一個(gè)技能生成一個(gè)“在某個(gè)時(shí)間點(diǎn)對(duì)某個(gè) id 施加某狀態(tài)”的事件主循環(huán)推進(jìn)到該事件時(shí)把技能映射到對(duì)應(yīng)角色身上而不是讓角色在 update 循環(huán)里輪詢技能。這個(gè)設(shè)計(jì)看似繞遠(yuǎn)路卻對(duì)回放和問題復(fù)現(xiàn)極有幫助。你保存的 replay 文件可以不是完整的狀態(tài)快照而只是一串事件什么時(shí)間對(duì)第幾個(gè)角色執(zhí)行了什么操作。不確定性也更容易控制。3. 最小閉環(huán)先把一只走不崩的旅鼠做出來再談多角色并發(fā)如果你要親手試一次 Lemmings 式的系統(tǒng)我強(qiáng)烈建議不要一開始就追求完美復(fù)刻也不要先做精美地圖。你需要的只是一個(gè)能不停產(chǎn)生角色的出生口、一段能走的地面、一個(gè)會(huì)造成轉(zhuǎn)身的墻、一個(gè)終點(diǎn)門和一堆能被清理掉的失敗角色。3.1 最小閉環(huán)應(yīng)該是什么一個(gè)可以驗(yàn)收的最小版本不是“世界能跑起來”而是以下條件全部滿足出生口按固定間隔生成角色角色沿地面行走遇到墻會(huì)轉(zhuǎn)身角色走到懸空邊緣會(huì)掉落落到地面上能恢復(fù)行走掉到超過閾值的深度會(huì)死亡走到出口時(shí)計(jì)數(shù)增加并消失地圖和操作記錄固定后連續(xù)運(yùn)行兩次結(jié)果一致。這個(gè)版本已經(jīng)能模擬出 Lemmings 最核心的觀感一隊(duì)小角色在局部規(guī)則的推動(dòng)下走出類似有目的性的軌跡。做完這一步你再去加技能、加多種狀態(tài)才會(huì)有清晰的參照系。否則跳過最底層的碰撞與狀態(tài)轉(zhuǎn)換直接在前面堆疊各種技能和 UI后續(xù)每次加新技能都可能牽連舊邏輯。3.2 地圖表示先決定用什么粒度Lemmings 類游戲有兩種常見地圖表示像素級(jí)碰撞網(wǎng)格塊碰撞。像素級(jí)的好處是細(xì)小的地形變化表現(xiàn)力強(qiáng)壞處是碰撞檢測(cè)復(fù)雜攀爬、挖掘、轉(zhuǎn)身判斷都要面對(duì)大量邊緣情況。網(wǎng)格塊的好處是判斷簡(jiǎn)單、便于手寫地圖編輯器壞處是缺少原版那種“像素邊緣”的細(xì)膩感。我不建議在一開始就糾結(jié)哪一種更高級(jí)。你只要確認(rèn)自己有能力根據(jù)碰撞結(jié)果做“前方一格是否阻擋”和“下方一格是否懸空”這兩種查詢即可。真正會(huì)影響后期開發(fā)體驗(yàn)的是這兩種查詢必須保持一致不能渲染層用一套地圖邏輯層用另一套。3.3 從狀態(tài)列表推演到完整行為循環(huán)一個(gè)剛實(shí)現(xiàn)的角色最值得認(rèn)真設(shè)計(jì)的是“狀態(tài)之間的轉(zhuǎn)換條件”。每次狀態(tài)切換都應(yīng)該由明確的碰撞檢測(cè)或事件觸發(fā)盡量避免在角色內(nèi)部保存任何類似“我已經(jīng)走了很遠(yuǎn)”的累計(jì)狀態(tài)。設(shè)計(jì)順序可以從最簡(jiǎn)單的行走開始出生口生成角色角色向左或向右走檢測(cè)前方墻并轉(zhuǎn)身檢測(cè)下方無地面進(jìn)入下落落地后回到行走如果墜落速度超過閾值角色消失并記錄失敗。當(dāng)你把這六步跑順并且連續(xù)運(yùn)行相同地圖能得到相同結(jié)果時(shí)就可以考慮加第一個(gè)技能了。首推“挖掘”或者“架橋”因?yàn)樗鼈兡苤庇^改變地圖結(jié)構(gòu)讓你提早感受狀態(tài)系統(tǒng)和地圖數(shù)據(jù)之間的耦合關(guān)系。加技能的時(shí)候仍然保持主線更新順序固定。也就是在一個(gè)固定 Tick 內(nèi)先處理所有角色行走和碰撞再處理技能動(dòng)作最后處理出生、出口與死亡計(jì)數(shù)。順序一旦固定盡量在后續(xù)迭代里保持不變。否則可能出現(xiàn)“角色已經(jīng)被救走但技能效果仍然作用在地圖上”的跨幀殘留。3.4 一組可復(fù)現(xiàn)的運(yùn)行參數(shù)是起跑線我不打算列出所謂的絕對(duì)標(biāo)準(zhǔn)參數(shù)因?yàn)榈貓D粒度和更新頻率不同角色運(yùn)動(dòng)速度也要跟著調(diào)整。更合理的做法是從一開始就把以下維度做成集中配置參數(shù)維度影響的內(nèi)容調(diào)參時(shí)的觀察重點(diǎn)每 Tick 行走像素?cái)?shù)角色移動(dòng)速度是否會(huì)在視覺上產(chǎn)生滑步或瞬移每 Tick 下落速度增量重力加速度下落啟動(dòng)是否太快體驗(yàn)是否突兀致命下落速度閾值失敗判定過大會(huì)讓懸崖變擺設(shè)過小會(huì)讓角色弱不禁風(fēng)出生間隔角色密度間隔太短后續(xù)技能供應(yīng)會(huì)跟不上地圖碰撞查詢粒度邊緣判定一致性轉(zhuǎn)角處是否會(huì)“卡死”或“穿?!奔寄艹掷m(xù)時(shí)間狀態(tài)行為長(zhǎng)度挖掘終點(diǎn)、架橋長(zhǎng)度是否可控出口判定范圍成功判定過寬會(huì)讓角色被意外吸入過窄會(huì)讓角色反復(fù)摩擦如果你在做游戲這些參數(shù)需要在編輯器里反復(fù)試手感。如果你只是拿它做技術(shù)練習(xí)就沒有必要追求手感只要保證參數(shù)是常量、可以被外部配置覆蓋即可。4. 技能看起來像魔法實(shí)際上是一筆“資源預(yù)算”真正讓 Lemmings 成為優(yōu)秀設(shè)計(jì)的不是那些小角色有多聰明而是玩家手里的技能數(shù)始終有限。你必須在幾十秒內(nèi)決定用哪個(gè)技能、用在誰身上、在哪個(gè)地形節(jié)點(diǎn)上生效然后接受這個(gè)決定無法撤銷。這個(gè)模型和調(diào)度一批有限資源很像。角色是任務(wù)技能是處理能力關(guān)卡是執(zhí)行環(huán)境入口是事件源。你不是在“控制一個(gè)角色”而是在“觀測(cè)一組任務(wù)并發(fā)推進(jìn)”并在關(guān)鍵節(jié)點(diǎn)插入干預(yù)操作。4.1 把每一種技能看成一種行為約束技能設(shè)計(jì)有一個(gè)容易踩的坑它不能只是給角色增加一個(gè)“永久 Buff”然后讓角色繼續(xù)原樣走路。很占篇幅的是技能改變了角色與地圖的關(guān)系。比如炸彈技能重點(diǎn)不是“角色死了”而是“它在死前的一刻會(huì)改變周圍地形”。這件事必須被建模成一段可重復(fù)的時(shí)序觸發(fā)前 3 秒角色保持原行為但開始播放引爆動(dòng)畫觸發(fā)時(shí)從地圖上移除周圍指定的像素塊觸發(fā)后角色被移出場(chǎng)景但附近其他角色可能因此失去地面而墜落。如果你只把“爆炸”當(dāng)成一個(gè)圖像特效只刪掉該角色而沒有同步修改地圖碰撞數(shù)據(jù)那么后續(xù)走到這里的旅鼠會(huì)全部穿過原來被阻擋的墻面游戲邏輯瞬間失真。4.2 事件時(shí)序比地圖數(shù)量更影響成敗玩 Lemmings 時(shí)最痛苦的不是某個(gè)技能效果不對(duì)而是多個(gè)事件在時(shí)間上重疊。比如同時(shí)有一名挖掘者在墻面底部挖掘且另一隊(duì)旅鼠從后方走到這個(gè)位置系統(tǒng)需要明確先檢測(cè)墻壁變化還是先讓旅鼠移動(dòng)這就是為什么固定更新順序非常重要。你可以在主循環(huán)里規(guī)定每 Tick 的更新順序?yàn)榈匦蜗到y(tǒng)讀取新的技能目標(biāo)移動(dòng)系統(tǒng)推進(jìn)所有角色的位置碰撞系統(tǒng)根據(jù)當(dāng)前地圖狀態(tài)判斷轉(zhuǎn)向、墜落或死亡技能系統(tǒng)處理本 Tick 需要觸發(fā)的地形改變出生與出口系統(tǒng)統(tǒng)計(jì)結(jié)果錄制系統(tǒng)保存當(dāng)前幀的關(guān)鍵摘要。這種順序不一定絕對(duì)正確但必須穩(wěn)定。一旦穩(wěn)定技能與地形同時(shí)發(fā)生時(shí)調(diào)試者至少知道是先有地形破壞還是先有角色移動(dòng)。多數(shù)版本不一致問題不是因?yàn)槟扯未a寫錯(cuò)了而是因?yàn)橹餮h(huán)內(nèi)部順序在不同平臺(tái)或不同幀率下出現(xiàn)漂移導(dǎo)致行為不可重放。5. 邊界條件與排錯(cuò)體驗(yàn)才是 Lemmings 真正昂貴的地方你可能覺得既然單個(gè)旅鼠的邏輯那么簡(jiǎn)單實(shí)現(xiàn)一個(gè)簡(jiǎn)化版應(yīng)當(dāng)很快。但實(shí)際做起來大量時(shí)間會(huì)花在幾種邊緣情況上像素差一格、狀態(tài)切換的瞬間、角色剛好站在技能影響范圍邊界、多個(gè)觸發(fā)條件在同一 Tick 同時(shí)滿足。任何一個(gè)小問題在一百個(gè)角色互相疊加后都會(huì)被放大成毫無規(guī)律的災(zāi)難。5.1 最常見的幾種“看似 AI 失靈”的場(chǎng)景第一種是角色卡在墻角原地抖動(dòng)。原因通常是前方檢測(cè)和下方檢測(cè)的坐標(biāo)點(diǎn)沒有取到同一層地面。角色認(rèn)為前方有墻于是轉(zhuǎn)身轉(zhuǎn)身后發(fā)現(xiàn)另一個(gè)方向又觸發(fā)墻判定于是再轉(zhuǎn)身。第二種是角色踩在懸崖邊緣卻沒掉下去只在邊緣懸空走兩步后卡住。原因往往是碰撞網(wǎng)格使用了精確的實(shí)體點(diǎn)查詢但角色模型中心與碰撞點(diǎn)不重合導(dǎo)致視覺上已經(jīng)懸空邏輯上還站在方塊上。第三種是技能觸發(fā)了但并沒有作用在玩家看到的角色身上。原因通常是你用鼠標(biāo)點(diǎn)選角色時(shí)拾取范圍比渲染區(qū)域大特別是大量角色擠在一起時(shí)點(diǎn)選命中順序不穩(wěn)定。第四種是挖掘者挖出通道后并沒有繼續(xù)前進(jìn)而是停在通道盡頭。這是因?yàn)榻巧x開挖掘狀態(tài)回到行走狀態(tài)時(shí)沒有重新檢測(cè)前方和下方。它繼承了上一幀的坐標(biāo)而那個(gè)坐標(biāo)恰好已經(jīng)嵌入地形導(dǎo)致下一步行走檢測(cè)失敗。這些現(xiàn)象看起來都像“邏輯抽風(fēng)”但絕大多數(shù)都不是隨機(jī)錯(cuò)誤而是沒有把狀態(tài)切換時(shí)的坐標(biāo)校準(zhǔn)寫清楚。遇到問題時(shí)不要先懷疑狀態(tài)機(jī)模型而要先去查切換瞬間的數(shù)值。5.2 用“單幀觀察者”而不是“整個(gè)畫面”去調(diào)試群體仿真最難受的是一百個(gè)角色同時(shí)動(dòng)作任何打印日志都會(huì)瞬間淹沒屏幕。如果你只在控制臺(tái)輸出“xxx 角色死亡”很難知道它死前經(jīng)歷了什么。更有效的辦法是加一個(gè)“單實(shí)體追蹤面板”。通過鼠標(biāo)點(diǎn)擊或按鍵切換到指定角色然后只輸出這個(gè)角色的位置、速度、狀態(tài)、最近一次狀態(tài)切換原因、最近一次碰撞檢測(cè)結(jié)果。這樣你在第 10 秒發(fā)現(xiàn)某只旅鼠走進(jìn)坑里沒有出來可以在第 9 秒開始追蹤它觀察每一幀的 x、y、state 和“下方是否 ground”字段。一旦看到某個(gè)坐標(biāo)值跳變或狀態(tài)序號(hào)從 walk 切到 fall 后立刻又切回 walk問題基本就鎖定了。這個(gè)手段雖然樸素但適用面極廣任何批量任務(wù)系統(tǒng)如果只能看到整體指標(biāo)看不到單個(gè)任務(wù)實(shí)例的生命周期堆棧都會(huì)遇到“整體看起來正常但局部任務(wù)反復(fù)失敗”卻無從下手的窘境。5.3 錄制與回放是最重要的調(diào)試手段Lemmings 類系統(tǒng)最適合保存的不是視頻而是“操作事件序列初始種子”。比如記錄{ level: level_01, fixedSelect: false, events: [ { tick: 130, type: assign_skill, lemmingId: 17, skill: dig }, { tick: 172, type: assign_skill, lemmingId: 34, skill: block } ] }運(yùn)行結(jié)束后如果你想復(fù)現(xiàn)某次奇怪死亡不需要從頭操作只需要重新加載同一張地圖和同一組事件。只要你的主循環(huán)確定性沒有問題它就會(huì)重走一遍所有角色狀態(tài)。然后你可以在任意一個(gè) tick 停住打開“單實(shí)體追蹤”查看導(dǎo)致問題的數(shù)值。6. 把 Lemmings 的方法論帶到今天的開發(fā)里它到底教給我們什么如果只是把它當(dāng)作一個(gè)懷舊游戲那這篇博客顯得太重了。但如果你現(xiàn)在正在做這類事情你會(huì)重新認(rèn)識(shí)它的工程價(jià)值。你在做 Roguelike 的怪物 AI 時(shí)會(huì)發(fā)現(xiàn)怪物之間如果共享同一個(gè)確定性輸入能減少不可復(fù)現(xiàn)的 Bug你在做即時(shí)戰(zhàn)略的群體尋路時(shí)會(huì)發(fā)現(xiàn)大量單位的“碰撞—轉(zhuǎn)向—移動(dòng)”順序比單位內(nèi)部的決策樹重要得多你在用成百個(gè) worker 執(zhí)行批量渲染或數(shù)據(jù)處理任務(wù)時(shí)會(huì)發(fā)現(xiàn)調(diào)度順序、事件回放、失敗日志的確定性設(shè)計(jì)直接決定你能不能長(zhǎng)期維護(hù)這套系統(tǒng)。Lemmings 是最早用娛樂方式教我這套思維的案例之一。6.1 穩(wěn)定優(yōu)先于智能很多初學(xué)開發(fā)者在做多角色系統(tǒng)時(shí)會(huì)著急引入行為樹、規(guī)劃算法、甚至機(jī)器學(xué)習(xí)模型。這種沖動(dòng)在兩個(gè)層面上很危險(xiǎn)。一方面復(fù)雜決策模塊很難調(diào)試另一方面如果底層的 Tick 更新不穩(wěn)定角色行為再聰明也沒用因?yàn)橥婕視?huì)看到角色在不同運(yùn)行時(shí)間出現(xiàn)漂移。更合理的推進(jìn)路線是先做一個(gè)確定性的物理與狀態(tài)系統(tǒng)再往上面加局部規(guī)則和技能干預(yù)。每一步都要保持可回放性。角色可以不算聰明但不能不可預(yù)測(cè)。穩(wěn)定性是智能能否被感知的前提。6.2 ECS 結(jié)構(gòu)很適合 Lemmings 這種游戲如果你在做正式項(xiàng)目可以考慮用 Entity-Component-System 而不是傳統(tǒng)的“每個(gè)對(duì)象一個(gè)類”。旅鼠只是實(shí)體身上攜帶位置、狀態(tài)、技能等組件而系統(tǒng)層統(tǒng)一處理移動(dòng)、繪制、技能、碰撞。這種架構(gòu)的優(yōu)點(diǎn)不是性能一定更好而是它強(qiáng)制你把邏輯拆成相對(duì)獨(dú)立的系統(tǒng)并且讓每個(gè)系統(tǒng)按固定順序執(zhí)行。你更不容易在某個(gè)旅鼠類內(nèi)部悄悄寫出一段同步等待邏輯也不會(huì)讓角色對(duì)象直接操作整張地圖的任意像素。6.3 最終判斷Lemmings 的價(jià)值不在“通關(guān)”而在“可控”你把一整隊(duì)旅鼠從出生點(diǎn)送到出口看上去是完成了一個(gè)關(guān)卡。但從開發(fā)者角度真正的成就是設(shè)計(jì)出了一套可以被觀察、被回放、被復(fù)現(xiàn)的系統(tǒng)。一個(gè)角色走進(jìn)出口是成功但在這一路上系統(tǒng)是否穩(wěn)定運(yùn)行、異常是否容易定位、新增技能會(huì)不會(huì)破壞舊關(guān)卡才是更值得長(zhǎng)期關(guān)注的指標(biāo)。所以我的最終建議很直接如果你對(duì) Lemmings 感興趣不要一開始就想做一個(gè)完整復(fù)刻。先構(gòu)建一個(gè)讓角色能行走、轉(zhuǎn)身、下墜、死亡、進(jìn)入出口的最小閉環(huán)把它固定成一個(gè)可復(fù)現(xiàn)的運(yùn)行流程。再在這個(gè)地基上逐步增加技能、地圖類型、資源上限。你會(huì)發(fā)現(xiàn)這套流程幾乎可以平移到你正在做的任何批量任務(wù)系統(tǒng)或群體仿真項(xiàng)目。先讓規(guī)則穩(wěn)定再讓系統(tǒng)可控最后才去談優(yōu)化和智能。Lemmings 里的旅鼠從來不需要變得特別聰明它們需要的是在一個(gè)足夠穩(wěn)定、足夠可解釋的世界里錯(cuò)誤發(fā)生時(shí)你能看見它并且知道它為什么發(fā)生。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
日本色婷婷| 26uuu丁香婷婷五月| 精品国产乱码久久久久夜深人妻| 婷香五月激情视频| 丁六月激情| 久久婷婷亚洲| h亚洲| 超碰97人人操| 色婷婷丁香AV综合| 成人做爰高潮A片免费视频| 丁香五月婷婷激情蜜桃| 婷婷丁香第一页| 99久热在线精品99re6热| 色婷婷综合视频| 五月婷婷色吧!| 色五月激情网| 另类激情四射| sewuyuetingtingiii| 超碰9| 国外亚洲成AV人片在线观看| 欧美25p| 96五月丁香熟女| 91热爆在线| 亚洲中文字幕在线电影| 婷婷.com| 中文字幕无码AV| 激情婷婷色色| 99超级碰免费视频| 激情综合网址| 91久久九久久九久久九久久九久久| 五月伊人综合| 九九热这里有精品视频| 99re久久| 狠狠色丁香久久久婷| 丁香婷婷婷五月综合色情| 五月激情天| 国产亚洲精品久久一区二区三区| 五月丁香六月婷婷久久| 国产午夜精品久久久观看| 99热这里有精品6| 久99久精品视频| 日韩不卡123| 日本狠狠色| a久久| www.狠狠操.con| 国产9色在线/日韩| 玖玖爱综合网| 久热中文字幕| 九久9精品| 啪啪夜久久| 亚洲电影中文字幕| 99色精品| 99在线er热| 久久香蕉福利| 天天色播| 欧美在线97| 操逼电影免费看| 少妇水多A片太爽了| 大香蕉久| 超级碰 久久9| 庭庭久久内射| 成人精品一区二区三区四区五区| 亚洲激情视频网| 99久久a线观| www久久五月com| 激情五月天综合网站网站网站| 国产激情AV| 色婷小说| 婷婷五月天激情综合| 婷婷射综合| 丁香五月婷婷影视先锋| 中文字幕综合网| 俺也去在线久久精品23欧美综合视频网站,丰满人妻一区二区三区在线视频53,丰满 | 伊人五月天日日夜夜久久久天天| 99九九视屏| 婷婷五月天成人基地| 色情一区二区播放| 国产9色在线/日韩| 国产古装妇女野外A片| 亚洲婷婷免费| 九色亚洲| 免费亚洲婷婷中文字幕| 亚洲五月天伊人| 久久有码| 婷婷黄色| 伊久大香蕉| 一起操 91N.com| 久久久久久久久久久44| 99热99成人| 亚洲精品五十一区| 先锋资源91| 少妇激情五月天| 成熟妇人A片免费看网站| 亚洲国产精品VA在线看黑人| 十区av| 色综合久久综合中文综合网| 久久精彩视频99| 婷婷操婷婷干婷婷射| 91九色熟女| 久久久久久久91| 丰满老熟妇BBBBB搡BBB| 日本va欧美va欧美精品88| 日本色爽| 五月婷婷啪啪啪啪| 天天激情5月天亚洲| 丁香五月情色| 五月婷婷激情日本| 99久久综合狠狠综合久久| 激情人妻综合| 五月天综合在线观看| 九九aV| 蜜臀AV在线观看| 日日夜夜亚洲一区| 五月色欧洲| 日韩欧美成人片| 五月综合视频| 天天爽在线视频| 99乱视频| 日噜噜色| 激情五月婷婷在线| 丁香五月成人社区| 伊人久久大香线蕉av一区| 亚洲五月天天| 亚洲综合成人网| 大香蕉丁香婷婷| 亚洲五月天婷婷| www.xtbsty.cn.com蜜乳AV| 婷婷五月在线播放| 狠狠狠狠狠狠草| 粉嫩av蜜桃av蜜臀av| 人妻精品久久久久久久| AV片一区在线观看| 久久久五月婷婷| 在线观看中文字幕| 丁香五月激情宗合网| 成人精品亚洲性爱| 色综合色综合色综合| 天天日天天狠狠操| 日本99久久| 99热日| 日韩色情亚洲五月天婷婷| 久久久WWW| 婷婷综合偷拍| 1024操逼视频| 99色视频在线观看最新| 涩综合网| 亚洲成人在线播放| 深爱激情综合| 9999三级片| 深爱激情婷| 99干日日干| 中文字幕丰满乱孑伦无码专区| 亚洲天堂啪啪| 丁香五月婷婷激情网| 五月丁香五月综合欧美| 久久精品五月天| www.日韩艹| 九九婷婷网五月天| 色欲久久久久久综合网综合网| 欧洲永久精品| 精品国产乱码久久久久久免费| 激情久久久| 色狠狠999综合| 一本色道久久88加勒比—| 人人爱人人摸人人澡| 97超碰,人人舔,人人操,人人摸| .操區COm| 久久日婷婷| 丁香九月婷婷色| 久99久视频精品| 六月婷婷网站| 永久免费一区二区三区| 久久曰曰| 激情婷婷另类| 色婷婷色综合激情91| 色五月成人| 丁香久久久| 激情丁香五月| 再綫Av免费視品| 疯狂做受XXXX高潮A片动画| 千人斩操逼| 香蕉人妻AV久久久久天天| 精品福利911| 成人午夜天| 九九色逼| 五月香婷婷| 亚洲色婷婷网站| 久久精品一区二区三区四区| 久久a热| 久久加勒比| 五月天婷婷av| 精品一区二区三区木瓜| 97极品在线| 99亚州综合精品成人网| 亚洲va欧美va国产综合久久久| 97色综合| 五月丁香影视| 色婷婷视频在线| 91肏| 99久久国产宗和精品1上映| 亭亭社区五月天| 中文字幕五月久久婷婷| 九九久久精品| 亚洲色五月天| 色婷綜合网| 91主播在线| 激情四射婷婷| 99爱视频免费看| 婷婷色在线视频| 在线综合网| 国产精品A片| 无码人妻激情| 99久久五月丁香野外| 婷婷丁香成人| 丁香六月婷婷综合缴| 国产一级片| 99综合五月免费视频色婷婷| 99热免| 国产日日操夜夜操的肉棒视频| 五月开心久久| 久久综合9| 九九99精品视频在线观看| 婷婷丁香六月影视| 成人看片网站| 99WWW免费视频| 国产精品久久欧美久久一区| 丁香五月日韩| 桃色激情网| 五月婷婷内射网| 欧美激情 日韩无码 婷婷 五月天| 午夜丁香| 丁香狠狠色婷婷| 婷婷成人小说综合| 五月丁香六月婷婷免费| 夜夜爽天天| 五月丁香色综合| 懂色av粉嫩av蜜臀av| 97人人射| 超碰在线免费| 9热视频在线观看| 99热久草| 丁香六月激情综合啪啪| 涩五月丁香| 99色视频| 色5月婷婷| 91疯狂操操操操| 五月天小说激情| 99热这里都是精品| aa久久| 五月丁香成人网| 午夜婷婷六月天| 99在线观看免费精品视频| 丁香五月婷婷啪啪啪| 热婷婷在线视频| 色丁香五月婷婷| 99热在线中文字幕| 99久久久99久久91熟女| 六月综合婷婷开心伊人| 色婷婷色99国产综合精品| 99性爱视频| 思思热在线播放| 亚洲成人乱码av网站| 六月婷婷狠狠| 五月丁香综合精品| 人人干AV| 色99网| 欧美丁香五月| 中文字幕丰满人妻无码专区| 生活片五区| 精品人妻在线| 五月丁香在线观看| 91夫妻视频| 综合激情站| 超碰av在线| 激情丁香婷婷| 嫩草AV久久伊人妇女超级A| 婷婷五月天小说| 激情五月天婷婷五月天| 少妇性BBB搡BBB爽爽爽视頻| 色色综合网。| 光棍影院日韩精品| 亚洲性受XXXX五月丁香| 丁香伊人激情| 色色亚卅| 综激情网| 国精产品一区一区三区免费视频 | 色婷久久| 能看的av网站| 96丁香婷婷九月蜜桃综合久久| 黄急一级视频| 激情久久丁香| 天天综合久久| 综合五月婷婷| 五月婷婷色| 中国女人内射6XXXXX| 大香蕉福利导航| 99伊人婷婷在线| 97操操操| 色婷婷亚洲婷婷在线观看| 玖玖婷婷五月天| 偷拍丁香九月激情| 精热在线综合网| 久久五月天婷婷| 五月丁香视频在线观看| 99热这里只有精品9| 99在线视频播放| 97色色网| 六月丁香婷婷大香蕉| 婷婷久久99| 久操热线| 99热这里有精品6| 久久婷婷六月综合| 蜜桃人妻无码AV天堂三区| 69久久久| 婷婷舔| 欧美中文五月天| 可以免费观看的AV| 久久 中文 日本| 天天五月丁香五月| 在线综合网| 99综合视频| 久久激丁香| 日韩色五月| 六月丁香综合网| 啪啪色区| 丁香97综合| 天天五月香欧美| 天天摸日日舔狠狠添婷婷婷 | 蜜桃婷婷丁香五月天狠狠久久综合| 亚洲成色综合网站免费观看| 99精品一二三四视频| 精品人妻午夜一区二区三区四区| 男女99免费视频| 丁香五月激情鲁| 激情五月天色播| 国产乱妇乱子在线播视频播放网站| 光棍影院日韩精品| 久久99性爱视频| 色色色999| 五月天婷婷社区久久综合| 五月丁六月香av| 色女人久久| 婷婷色色色| 99热无码精品| 婷婷五月天久久| 欧美、日韩、中文、制服、人妻| 蜜乳9188| 人人爱人人草| 天天爽在线视频| 久久人人妻| 国内久久亭亭| 五月色色网| 九九干视频| 色五月激情| 一本久久婷婷| 狠狠草狠狠草| 色婷婷a| 婷婷五月天视频免费在线观看| 色婷婷AV在线观看| 天天综合网站| 丁香婷婷久久| 天天爽天天爽| 天天爽夜夜爽天天爽夜夜爽| 五月丁香综合网| 丁香五月六月婷婷怡红院| 色综合婷婷99| 91九色中文字幕女在线观看| 综合五月婷婷| 丁香六月婷婷久久综合| 色婷婷五月天小说| 九月婷婷激情| 五月婷丁香| 久久精品国产色| 超pen个人视频97| 六月婷婷激情小说网| 永久天堂日本| 久久香蕉影院| 激情五月com| 色婷婷精| 91日本在线观看| 欧美99| 日日影院 | 天天色天天爱天天爽| 第九色区AV在线| 色五月婷婷色五月婷婷色五月婷婷| 亚州婷婷五月激情综合| 夜夜骑夜夜操| 婷婷丁香色情五月天| 成人在线视频男人的天堂4399| 五月丁香色综合| 大香蕉婷婷五月天| 综合久久激情久久| 91精品婷婷国产综合久久| 久久婷婷精品| 婷婷五月天久| 久久曰曰| 五月婷婷综合网| 久久久思思热| 伊人久久中文网| 26UUU精品一区二区| 99 这里只有精品| 久久一操| 国产精品扒开腿做爽爽爽A片唱戏| 人人人va亚洲视频在线| AV激情五月| 久久久久久99日本| 激情五月天综合网| 日婷婷| Av性爱网站| 激情久久月| 九热视频| 激情婷婷色色| 成人va在线播放| 天天爽天天爽天天爽天天爽天天爽| 成人AV播放| 五月丁香黄色视频| 婷婷天天婷婷天天澡| 丁香婷婷精品视频| 综合狠狠干| 1024亚洲无码| 天天日天天干天天爱| 97亚洲精品| 超碰99在线观看| 荷兰av一级| 激情WWW| 99综合视频一体| 婷婷之玖玖| 香蕉AV777XXX色综合一区| 九九大香视频| 久久这里只精品| 丁香婷婷六月激情综合| 99色啊| 国产无人区大片| 久久涩视频| 伊人色综合网| 九九热精品| 91九色中文| www.日日夜夜.com| 色五开心五月五月深深爱| 男人天堂亚洲综合| 青青草a在线| 影音先锋色婷婷| 百度4399有码精品V在线观看| 亚洲成人AV高清字幕| 伊人99热| 国产精产国品一二三在观看 | 欧美丰满熟妇BBB久久久| 五月婷婷综合久久| 中文资源在线a| 天天日天天爽| 91视频一起草| 婷婷九月丁香| 人人草人人爱| 亚洲妇女熟BBW| 亚洲综合另类| 国产成人精品一区二区三区视频| 国产毛多水多女人A片| 五月天婷婷无码| 色色色国产| 另类激情五月| www.婷婷五月天.com| 色吧五月| 国产精品18久久久| 免费超碰在线观看| AV亚洲在线| 婷婷黄色网| 五月婷婷久久爱| 人人操婷婷| 婷婷五月天成人综合网| 五月天婷婷丁香六月| 婷婷五月天激情AV影院| www天天爽| 欧美人妻一区二区| 婷婷久久99| 91Chinese在线| 97热这里只有精品| 精国产品一区二区三区A片| 日本不卡一区二区三区| 91操女| 8050一级网| 无码成人AAAAA毛片AI换脸| 天天综合色| 九九色精品| 国产精品久久久爽爽爽麻豆色哟哟| 激情都市另类| 天天干,天天操,天天射| 97人人干| 婷婷伊人久久综合| 五月久久婷婷成人网| 日本九九网| 色色五月天激情| 欧美 日韩 人妻 高清 中文| 九九热99在线视频| 玖玖视频福利| 5月婷婷激情网| 无码髙清| 久久人妻少妇嫩草AV| 婷婷激情五月天激情小说| 丁香五婷婷| 日韩婷婷五月| 久久婷婷综合五月趴| 思思热久久艹| 久久婷鲁| 综合五月草| 丁香五月六月婷婷综合激情| 丁香五月久久| 婷婷五月丁香国产| 五月色丁香综合| 啪到高潮激情丁香五月| 五月天精品| 婷婷天天五月天| 成人短视频在线| 婷婷五月天亚洲图片| www.色九月| 八戒青柠影视剧在线观看| 日本九九九九九九| 丁香五月狠狠综合欧美| 天天射美女| 久久婷婷综合五月| 新久久五月天激情| 五月婷婷六月激情| 人碰人人人玩91| 婷婷丁香五另类网站| 丁香五月天啪啪激情综合网| 99热精品在这里| 五月婷天堂视频| 色综合久久88色综合天天人守婷| 99热e| www.色欲丁香婷婷| 六月色五月天天婷婷| 天堂久久婷婷| 91大神在线免费看视频全集男男一起操| 婷婷成人网五月天| 亚洲六月色婷婷| 亚洲av电影网站| 丁香六月 婷婷六月| 色停停五月,在线观看| 99ER热精品视频| 轮奸综合网| 色七七九九| 亚洲天堂青草| 五月婷婷丁香在线视频| 国产做爰视频免费播放| 精品网站99| 六月激情婷婷| 九九热a| 玖玖99免费视频| 色婷婷啪啪| 热久久视频99| 91re色综合视频| 青青草深爱激情网| 亚洲中文字幕在线观看| 五月激情视频网| 热久久这里只有精品| 中文字幕av久久爽一区| 欧美影院婷婷| 日本久久精品| 色屌丝中文字幕| 日韩人妻在线观看| 97操碰碰无码视频| 91精品久久久久久| 天天色综网| 日本久久天堂| 99热这里都是精品| 色婷婷丁香五月在线| 色婷婷久久| 久热这里只有精品在线观看 | 人人操9| 99.色| 不卡在线视频| 深爱激情69热| 婷婷综合另类| 婷婷色丁香五月| 成人亚洲精品| 深爱五月婷婷| 婷婷五月综合啪| 97综合视频在线| 五月丁香婷婷成人综合网| 九九色网| 欧美日韩成人一区二区| 开心婷婷中文字慕| 日本不卡高字幕在线2019| 婷婷综合成人五月天| 99精品偷自拍| 五月激情影视| 丁香五月在线人妻| 色五月,com| 日本色狠狠| 激情六月天婷婷| 婷婷丁香久久| 婷婷丁香亚洲五月天| 伊人免费视频9| 99re8在这里只有精品| A1片久久久| 久久这里只精品| 激情伊人五月婷婷久久| 99热99在线精品| 中文字幕在线免费观看视频| 激情亚洲色图片丁香综合| 91av无码| 激情深爱五月天| 国产日日操夜夜操的肉棒视频| 国产在线视频1234| 狠狠综合网| 激情性五月天免费小说视频 | 97热这里只有精品| 丁香五月天婷婷在线视频| 日日躁夜夜躁狠狠久久AV| 丁香五月婷婷色偷偷| 五月丁香婷婷综合久久| 九色在线五月婷婷网址| 婷婷丁香在线| 五月激情天天干| 色综合网上班开心婷婷久久| 狠狠色中色| 色婷婷影视| 欧美草久久五月天91| 欧美 日韩 成人在线| 天天日中文| 丁香六月狠狠干| 五月天婷婷开心| 色狠狠999综合| 色和综合网| 日本99视频| 蜜桃五月天| 99在线精品视频免费| 性爱五月婷婷| 色欧美一级| 九九九色综合| 五月丁香六月色| 五月婷婷丁香大陆免费| 日韩欧洲亚洲| av在线免费网站| 色网五月婷婷| 亚洲人人操| 最新色色五月天| 97婷婷五月| 激情综合色五月六月婷婷| 久久草中文日韩欧美| 亚洲va久久久噜噜噜久久天堂| 五月丁香婷婷综合| 大香蕉久艹| 五月天婷婷社区| 亚洲狠狠狠| 人人人人人人人人人草| www.五月婷婷久久.com| 无码动漫av| 五月天丁香啪啪啪啪| 4438亚洲欧美| 无码少妇高潮喷水A片免费| 另类小说五月天| 久久婷五月综合| 激情五月天激情五月天| 五月天激情亚洲| 26uuu另类| 九九视频精品视频精品| 婷婷色系婷色| 日日夜夜青青草| 夜夜操夜夜爽| 色五月久久成人婷婷| 久久曰曰| 激情五月天久久丁香| 丁香激情久久| 五月天激情影院| 久久婷婷五月天蜜桃| 视频一二区| 另类激情码| 色七七九九| 99九九玖玖| www.色色五月天.com| 亚洲网站999| 色色五月婷婷久久| 99精品热视频| 九九视频免费| 婷婷美女精品视频| 婷婷开心激情综合五月天| 欧美婷| 丁香社区婷婷五月| 天天草比天天爽| 婷婷网五月天| 五月丁香好婷婷A片网| 婷婷激情性爱| 丁香五月婷婷啪啪| 九九一区| 综合久久综合综合| 人人操插| 人妻系列久久久久久久久久久| 婷婷五月天综合蜜桃| A色色| 99精品视频免费| 丁香五月综合激情性爱| 99久久性爱| 少妇性BBB搡BBB爽爽爽视頻| Av在线不卡一区| 色欲久久久久久综合网综合网| 91se在线视频| 伊人五月人妻精品| 停婷丁五月在线| 亚洲av网站| 欧美交换配乱吟粗大25P| 国产99久久久国产精品免费看 | 97色片| 日本色婷婷综合| 五月婷婷伊人在线| 日本三级中文字幕| 狠狠精品干练久久久无码中文字幕| 爱穴久久| 久久xxxx| 这里只有精品免费观看网占| 九九久久99精品免费观看www| 996热| 久久久久视剧HD| 超碰人人操在线| 色五月天综合| 99热色精品| 99久热| 激情婷婷视频在线| 玖玖资源部在线播放| 综合激情五月天六月婷免费视频| 五月丁香天堂网| 丁香五月玖玖| 久久综合九九| 五月丁香六月香综合激情| 99人碰碰碰| 91九九九色在| 色婷婷五月六月丁香综合视频| 五月婷婷激情久久| 成人做爰高潮A片免费视频| 性爱七区| 欧美英丁香开心快乐六月天网| 欧美精品99| 超碰免费观看| sisi热国产| www999日韩精品| 成人精品免费在线观看| 婷婷五月色花丁香社区| 日本一级一片免费视频| 婷婷不卡基地| 婷婷色5月天在线。| 婷婷丁香花五月天| 婷婷色一二三区波多野结衣| 婷婷久久六月天| 亚州色色色| 涩涩婷婷五月| 久色欧美| 九色视频九色九色91jiuseshipin| 五月丁香狠狠爱| 99色色| 91免费试看| 操日本人妻视频| 婷婷久久五月| WWW.天天日| 婷综合| 超级碰碰碰碰视频| 色婷婷亚洲精品天天综| 中文字幕丰满乱孑伦无码专区 | 色婷婷综合网| 99无码视频| 五月丁香激| 99综合网| 玖玖精品婷婷| 六月激情综合| 91丨九色熟女丨首页| 色五狠狠| av人人操| 色五月综合在线| www.色欲丁香婷婷| 伊人久久五月天综合| 大香蕉在九| 狠狠色丁婷婷日日,伊人激情综合网| www.zbzhongsen.com| www.精品99| 青青草tp| 97av在线视频| 99热这里只有精品中文字幕| 天天做天天爱高潮片| 久久只有18视频| 五月婷婷xxx| 五月婷婷激情五月| 天天日夜夜高潮| 五月天激情小说| 就爱操www com| 亚洲网站观看视频| 五月天色裸体视频| 97成人超碰免| 久久久ww| 这里只有精品偷拍| 久久久99精品免费观看| Va另类视频| 大香蕉丁香五月| 夜夜躁爽日日| 激情久久五月天| 色色国产| VA婷婷亚洲| 天堂久久大香蕉| 99精品在线观看视频| 亚洲激情综合| 日韩黄色影院| 五月丁香婷婷AV| 色碰碰| 激情久久久| 国精产品久久| 五月婷婷综合性爱噜噜| 日韩人妻无码专区| 五月色丁香成人| 国产在线另类五月婷婷| 丁香五月天亚洲综合| 99九无网码| 婷婷四月 成人 狠狠干| 九九XX视频| 色播五月综合网| 激情五月婷婷免费视频| 热99色| 婷婷五月丁香综合激情| 综合激情五月丁香9999久久精| 激情5月婷婷| www.婷婷,com| 2023天天日夜夜爽| 中文字幕av亚洲| 色5月婷婷| 狠狠色综合网站久久久久| 另类视频综合| 丁香五月玖玖| 99热这里只有精品66| 亚洲人人操BD| 久久婷婷伊人| 婷婷五月天渟渟| 九九激情网| 亚洲国产精品综合色区| 99在线热| 色情成人五月天| 婷婷丁香18| 久久久这里有精品| 成人久久天天x资源站| 日韩xx在线| 国产精品久久久久久久久久| 五月天成人在线播放| 五月婷婷久久激情 | 日韩1区2区| 色色色色色色色综合| 激情五月婷婷视频一区二区三区| 国产成人精品一区二三区熟女在线| 五月丁香六月婷婷色日| 婷婷丁香成人在线视频| 婷婷丁香色情| 日本在线观看aaa 99| 丁香五月天啪啪| 婷婷久久99| 五月色色激情网| 色亚洲婷婷| 欧美色色色| 四射综合网| 丁香五月婷婷社区| 伊人五月天| a在线观看| 婷婷五月婷婷| 丁香五月激情综合啪啪| 99热欧| 狠狠爱综合| 综合玖玖偷拍| 七七色综合| 精品欧美性爱超级爽| 色色色99| 婷婷五月天久久| www色五月| 欧美丁香五月| 五月天成人小说| 丁香六月天堂| 久久婷婷在线| 99re欧美精品| 色色国产| 欧美日韩成人在线| 99久久网站| 99久热这里只有精品| 五月天丁香网站| 99热免费| 国产综合婷婷| 97色97干| 玖玖午夜视频| 99热99美国在线观看| 天天色天天日天天舔| 成人免费va| 九九热免费| 色婷婷五月中文字幕在线dvd| 六月天丁婷婷| 激情五月天www| 99久久精品视频女神1| 色久五月| 五月天色网站| 亚洲欧州色情在线观看| 播五月丁香六月| 综合婷婷五月丁香在线观看| 九九99一区| 天天综合中文| 天天做天天爱天天爽综合网| 99精品综合| 九九性爱网| 亚洲AV日韩无码| 亚洲激情四射| 日韩人妻无码专区| 欧美三级巜人妻互换| 99久久九九视频| 欧洲综合一区| 丁香婷婷婷五月综合色情| 欧美操逼天堂| 日本超碰在线| 99热在线99| 伊人久久五月天| 噜噜色com| WWW.桔色成人.COM| 婷婷色综合| 国产成人精品亚洲线观看| www.9操| 99久久終合| 99毛片| 欧美va亚洲va| 婷婷五月天激情AV影院| 999热这里只有精品| 99爱爱| 丁香六月婷婷久久综合| 色99久草在线| 午夜爱爱网站| 九月婷婷综合八月丁香在线观看| 人人做人人看人人摸| 丁香五月婷婷香| 色五月婷婷影院| 99久久九九视频| 99玖玖人人| 99视频色在线观看| 丁香五月六月欧美| 亚洲无码成人| 爱爱网址9| 色色五月婷婷久久| 婷婷大美在线| 婷婷五月天福利| 超碰人人色| 99久久終合| 噜噜噜噜噜久| 丁香五月婷婷色偷偷| 97香蕉久久超级碰碰高清版| 久久五月天合网| 99色性爰网络| 五月天大香蕉| 色婷婷综合电影| 丁香六月婷婷综合激情欧美| www,99热| 人妻少妇色综合| 婷婷自拍| 伊人六月无码视频| 久久色五月| 久久大香蕉丁香| 伊久久婷婷| 婷婷五月天六月| 婷婷五月天亚洲| 超碰在线观看caop| 亚洲激情五月婷婷日日| 伊人玖玖网| 97色五月婷婷在线| 五月丁香色色网| 久久婷婷六月综合| 国外亚洲成AV人片在线观看 | 色婷婷亚洲六月婷婷中文字幕| 五月激情天| 日本女人久久| 婷婷五月天资源| 五月丁香六月色| 91精产一区三区免费观看| 五月婷婷之六月丁香| Av大香蕉| 加勒比日本一区二区三区| 三级成人网站| 日韩1区2区| 欧美色97| 5月婷婷激情在线| 国产五月视频| 婷婷丁香77777| 四虎成人精品永久免费AV九九| av一区免费看| www.丁香黄色五月天人与| 激情深爱五月天| 婷婷久久99| 999热这里只有精品| 波多野结衣不卡AV| 狠狠操天天操天天操| AV性爱在线| 激情婷婷在线中文字幕| 久久怕怕视频| 7777久久亚洲中文字幕| 青青草六月丁香| 欧洲色区| 精品一区二区三区四区五区六区介绍 | www.minyis.com【JT】实力收量可预付QQ2101460746 | 婷婷综合亚洲| 色噜噜狠狠色综无码久久合欧美| 99爱在线| 噜噜噜精品欧美成人在线观看| 99热| 天天草天天舔| 中文字幕欧美日韩VA免费视频| 久久黄A片| 久久99热这里只有精品| 九九热a| 亚洲综合五月天婷婷| 丁香六月啪| 开心五月婷婷激情| 99无码视频| 狠狠综合| 天天弄天天爽| 天天天天操| 丁香五月瑟瑟| 五月情综合| 蜜臀AV在线观看| 激情网第四色| 九九成人电影婷婷| site:feetmall.com| 啪啪啪丁香五月| 激情小说视频图片| 色婷成人狠干| 丁香五月综合激情啪啪| 色婷婷在线播放| 婷婷五月天视频| 色婷婷五月天天天天天天天天天| 免费观看全黄做爰的视频| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇| 亚洲情综合五月天| 亚洲bt丁香五月天婷婷激情小说| 97ai婷婷| 激情久久肏屄视频| 五月天色播网| 日韩无码AV电影网站| 天天摸色吧天天摸色吧| 丁香六月婷婷色播| 大香蕉五月天婷婷| 思思热久在线观看视频| 91精品久久久久久久久久| 亚洲激情.com| 色噜噜狠狠色综合成人网| 丁香五月婷婷基地| A A色色| 色婷婷综合电影| 91精品久久久久久综合五月天| 国产伊人五月天| 亚洲AV日韩在线观看| 色五月五月天色婷婷色五月| 91久久婷婷| 婷婷97色| 99狠狠| 亭亭丁香久久五月| 超碰自拍天堂| 久久九九爽| 日韩五月天婷婷| 久热伊人9| 婷婷视频网| 99热最新| 深爱激情中文五月天av| 欧美熟女视频 色婷婷| 超碰国产AV| 色婷婷4| 日亚二欧美| 国产精品美女久久久久AV超清| 亚洲综合激情五月| 99久久精| yiqicaoav| 97人人超| 狠狠操狠狠| 激情校园 亚洲| 97人妻碰碰碰久久香蕉| 婷婷色情 | 丁香五月欧美激情| 婷婷激情网五月天| 91一起操| 五月丁香日逼| 影音先锋女人AA鲁色资源| 91精品久久久久、久五月天| 久久丁香五月婷婷激情综合网| 免费看片在线观看| 成人综合网站| 亚洲啪啪啪啪| 99热99热在线| 另类婷婷丁香| 婷婷五月天久久久| 91超级碰人人操| 夜夜爽77777妓女免费下载 | 极品少妇高潮啪啪AV无码| 久操97| 五月天六月婷婷电影| 五月丁香日本片| 婷婷五月天AV在线| 日韩一级淫乱片一区二区三区| 婷婷五月激情小说| 一区二区乱码视频| 亚艹艹| 久久五月天激情视频| 91狠狠色丁香婷婷综合久久精品| 久久一伦| 99国产99| 午夜天堂一区人妻| 99热国产免费| 丁香激情网| 婷婷色综合av| 色97啪啪| 国产女18毛片多18精品| 免费视频WWW在线观看网站| 色婷婷视频| 久操激情| 色五月激情五月开心五月| 夜夜撸天天日| 5月婷婷激情6月| 激情五月激情综合网一级丸片 | 搡BBBB搡BBB搡18 | 五月婷婷久久综合| 五月婷婷激情综合网| 九九色欲网| 中文成人在线| 99色热| 婷婷午夜天| 婷婷综合五月天亚洲综合| 五月天婷婷成人资源站| 色狠狠六月| 色五月久久成人婷婷| 五月丁香六月婷婷,婷| 亚洲色综合| 日韩人妻无码专区| 狠狠操综合| 狼人久草| 六月丁香成人网| 九热...av| 97人人做| 9久精品视频| 欧美日韩99| 激情五月婷婷五月| 色五月成人| 色色五月婷婷| 无码人妻丰满熟妇奶水区码 | 激情综合九| 在线91日韩| 亭亭五月基地在线| 五月天婷婷免费| 中文字幕婷婷| site:pzdcoin.com| 天天日天天摸天天| 丁香五月天精品| 精品免费99| 夜夜干 夜夜操| 丁香婷五月天开心六月| 日韩AV片| 天天操综合网| 国产精产国品一二三在观看| 七月丁香婷婷 色色| 大香蕉伊然在亚洲90| 五月婷婷九九久久| 五月丁香福利| 这里只有精品热| 激情小说之五月| 开心五月网| 超碰人人操人人干| 91chinese在线| 天天日色情| 九九综合网色全集 | 人草人人| 五月婷中文字幕| 91狠狠色丁香婷婷综合久久| 亚州第一黄网| 99精品热| 97综合在线| 亚洲V国产V欧美V久久久久久| 综合久久激情久久| 大胆伊人久久| 久久久人妻人伦| 五月丁香婷中文字幕| 激情五月丁香亭亭| 五月天婷婷激情小说电影| 亚洲国产精品VA在线看黑人| 停停六月 综合| 婷婷久久五月天| 能直接看的AV网站| 中文字幕,综合,91| 亚洲综合五月天| 亚洲免费成人电影AV| 丁香婷婷六月天| 久久精品小视频| 五月99久久| 少妇大叫太大太粗太爽了A片| 五月婷色丁香| 亚洲五月丁香综合网| 天天做天天爱天天综合网| 三级黄网站| 99视频在线观看视频| 日本成人噜噜噜| 激情婷婷| 91久久九色| 99久久黄色顶级视频| 丁香六月久久| 国产精产国品一二三在观看| 六月婷婷网| 亚洲五月丁| 久久久久久激情| 久久99人人| 亚洲小视频免费观看| 色色色色色色网| 亚洲精品又粗又大又爽A片| 极品另类| 婷婷五月丁香成人| www.色综合| 香蕉99网| 婷婷五月天天| 级情九色| 91se在线观看| 日韩综合大黄| www婷婷| 婷婷五月丁香综合桃花色网| 九月婷婷综合八月丁香在线观看| 日本三久久| 91免费试看| 五月色情网| 色色色成人网| 婷婷五月丁香花综合| 五月婷婷丁香综合网| 国产精品色色| 久久婷婷精品| 永久免费一区二区三区| 亚洲无码性爱| 色综合色欲综合天天免费| 色噜噜狠狠色综合日日| 9久久精品视频| 狠狠操性爱av| 成人做爰高潮A片免费视频| 中文字幕在线播放视频| 天天干,夜夜爽| 亚洲av成人一区二区电影在线| 91啪级电影| 国产一区二区三区影院| 6月丁香婷婷| 午夜成人天堂久久无码日韩久久| 丁香五月激情欧美| 久久久五月四色| 色亭亭影园| 6080av| 免费看欧美成人A片无码| 2014天天爽| 激情五月天社区| 色色激情| 色色色无码| 啪啪啪综合网| 九九性视频| 操一区| 五月丁香| 丁香五月婷婷色| WWW.婷婷| 色玖玖| 色婷婷色99国产综合精品| 99色视频| 色爱综合网| 日韩人妻无码一区二区| 99热最新| 五月熟妇婷婷久久| 亚洲熟妇AV乱码在线观看| 色综合性视频| 天天干在线播放| 欧美激情-区二区三区| 色色色色色色综合网| 99久久综合精品五月天| 婷婷五月天成人视频| 日本va欧美va欧美精品88| 婷婷六月综合基地| 色婷|