使用 ChatGPT 啟發(fā)游戲創(chuàng)意|基于 AI 5 天創(chuàng)建一個(gè)農(nóng)場(chǎng)游戲,第 2 天
歡迎使用 AI 進(jìn)行游戲開發(fā)! 在本系列中,我們將使用各種 AI 工具,在 5 天內(nèi)創(chuàng)建一個(gè)功能完備的農(nóng)場(chǎng)游戲。到本系列結(jié)束時(shí),你將了解到如何將多種 AI 工具整合到游戲開發(fā)流程中。本系列文章將向你展示如何將 AI 工具用于:
美術(shù)風(fēng)格
游戲設(shè)計(jì)
3D 素材
2D 素材
劇情
如果你還沒有了解這個(gè)系列的第一篇,歡迎到 這里 先回顧一下。
第 2 天:游戲設(shè)計(jì)
在本系列教程的 第 1 部分 中,我們使用 AI 幫助確定美術(shù)風(fēng)格。更確切地說,我們使用了一項(xiàng)名為 Stable Diffiusion 的技術(shù),實(shí)現(xiàn)了生成概念藝術(shù)圖片,并將其應(yīng)用到游戲的視覺美術(shù)風(fēng)格中。
在這一部分中,我們將使用 AI 進(jìn)行游戲設(shè)計(jì)。在下文的「縮略版」中,我會(huì)簡(jiǎn)要介紹如何使用 ChatGPT 工具幫助啟發(fā)游戲創(chuàng)意。但對(duì) AI 相關(guān)的讀者來說,更值得關(guān)注的是 ChatGPT 的工作原理。你也可以在下文的「語言模型」部分了解更多關(guān)于語言模型的背景知識(shí),以及更多在游戲開發(fā)中的應(yīng)用,請(qǐng)繼續(xù)往下閱讀。
縮略版
使用 AI 進(jìn)行游戲設(shè)計(jì)的縮略版:向 ChatGPT 提問尋求建議,然后自行決定是否遵循建議。以本系列的農(nóng)場(chǎng)游戲?yàn)槔?,我這樣提問 ChatGPT:
?你是一名專業(yè)游戲設(shè)計(jì)師,正負(fù)責(zé)一款簡(jiǎn)易農(nóng)場(chǎng)游戲的設(shè)計(jì)工作。為使該農(nóng)場(chǎng)游戲好玩有趣且引人入勝,哪些功能應(yīng)最優(yōu)先考慮?
得到的回答(總結(jié))如下:
多樣性的農(nóng)作物
具有挑戰(zhàn)性和獎(jiǎng)勵(lì)機(jī)制的進(jìn)階系統(tǒng)
動(dòng)態(tài)、可交互的環(huán)境
社交性質(zhì)、多人玩法
精妙絕倫的劇情
鑒于此系列只有 5 天時(shí)間,我僅實(shí)現(xiàn)了前兩點(diǎn)的游戲功能,并完成了灰盒測(cè)試。您可以查看下面鏈接試玩游戲或者查看源碼。
試玩游戲:
https://individualkex.itch.io/ml-for-game-dev-2查看源碼:
https://github.com/dylanebert/FarmingGame
本文不會(huì)詳細(xì)說明實(shí)現(xiàn)這些游戲機(jī)制的具體細(xì)節(jié),因?yàn)楸鞠盗械闹攸c(diǎn)是如何使用 AI 工具幫助農(nóng)場(chǎng)游戲開發(fā),而不是如何實(shí)現(xiàn)。相反,本文將介紹 ChatGPT 是什么 (語言模型)、它的工作原理是什么、以及怎樣影響著游戲開發(fā)過程。
語言模型
ChatGPT 盡管在回答采納率方面取得了重大突破,但實(shí)際上它是現(xiàn)有技術(shù)的迭代產(chǎn)物,這項(xiàng)技術(shù)就是 語言模型。
語言模型是 AI 的其中一種,經(jīng)訓(xùn)練可用于預(yù)測(cè)單詞序列的概率。例如一個(gè)序列「貓捉__」,我們期望語言模型經(jīng)訓(xùn)練可以預(yù)測(cè)的單詞為「老鼠」。這類訓(xùn)練過程可以應(yīng)用于多種類型的任務(wù),例如翻譯任務(wù):「貓的法語單詞是___」。這種訓(xùn)練設(shè)置雖然在早期的一些自然語言處理任務(wù)上取得很好的效果,但對(duì)比當(dāng)下的模型水平仍相差甚遠(yuǎn),而差距懸殊的原因就是 transformers 這項(xiàng)技術(shù)。
Transformers 是 2017 年被提出的一種神經(jīng)網(wǎng)絡(luò)架構(gòu),它使用自注意力機(jī)制單步完成整個(gè)序列的預(yù)測(cè),是 ChatGPT 等現(xiàn)代語言模型背后的重要技術(shù)。想深入了解其工作原理?訪問 Hugging Face 查看 Transformer 入門課程!
Transformer 入門課程地址:
https://huggingface.co/course/chapter1/1
相比于早期的語言模型,為什么 ChatGPT 如此成功?全面地回答這個(gè)問題是不可能的,因?yàn)?ChatGPT 并未開源。不過可回答的其中一個(gè)方面是 RLHF(Reinforcement Learning from Human Feedback),即以強(qiáng)化學(xué)習(xí)的方式依據(jù)人類反饋優(yōu)化語言模型。可以點(diǎn)擊這篇博客文章: ChatGPT 背后的「功臣」——RLHF 技術(shù)詳解,查看更多關(guān)于 RLHF 的信息,包括它的工作原理、實(shí)現(xiàn)它的開源工具及其前景展望等等。
AI 領(lǐng)域在持續(xù)變革。隨著 AI 成為開源社區(qū)的一部分,可以預(yù)見在激發(fā)創(chuàng)造力方面將出現(xiàn)爆炸式增長(zhǎng),當(dāng)然也包括在游戲開發(fā)中的應(yīng)用。如果您正在閱讀本文,您可能已經(jīng)走在變革前列。
在游戲開發(fā)中的應(yīng)用
在縮略版中,我介紹了如何使用 ChatGPT 來幫助啟發(fā)游戲創(chuàng)意。不僅如此,您還可以用它來編寫完整游戲代碼,以及用于幾乎任何您能想到的事情。反而了解它的 局限性 可能更有意義。
局限性
ChatGPT 的有些回答通常聽起來可信度很高,但實(shí)際上是錯(cuò)誤的。這里有一份 ChatGPT 錯(cuò)誤回答合集,造成這些的原因是 ChatGPT 不能理解人類講話的方式。ChatGPT 僅僅是一個(gè)非常大的語言模型,對(duì)于一個(gè)問題它可以預(yù)測(cè)可能的回答,但并不能真正理解自己在說什么。我個(gè)人非常喜歡的錯(cuò)誤回答(尤其是與游戲開發(fā)相關(guān)的)之一是從 Reddit 摘錄的一篇 ChatGPT 對(duì)四元數(shù)的解釋:
ChatGPT 錯(cuò)誤回答合集:
https://github.com/giuven95/chatgpt-failuresReddit 上對(duì) ChatGPT 對(duì)四元數(shù)的解釋的帖子
https://www.reddit.com/r/Unity3D/comments/zcps1f/eli5_quaternion_by_chatgpt/

?向一位小朋友解釋一下四元數(shù)是什么
四元數(shù)是表示旋轉(zhuǎn)的一種特殊方式。想象一下你有一輛玩具車,你想把它轉(zhuǎn)到另一個(gè)方向。僅說 “把車向左轉(zhuǎn)” 這樣的模糊詞不夠,這時(shí)候可以使用四元數(shù)來精確地表示玩具車的轉(zhuǎn)彎角度以及轉(zhuǎn)彎方向。四元數(shù)有四個(gè)組成部分,每一部分都表示轉(zhuǎn)彎的不同信息。第一部分表示玩具車的轉(zhuǎn)彎方式(左轉(zhuǎn)或右轉(zhuǎn));第二部分表示玩具車的具體轉(zhuǎn)彎角度;第三部分表示玩具車的傾斜方式;第四部分表示玩具車的具體傾斜程度。使用四元數(shù)可以精確地表示你對(duì)玩具車如何轉(zhuǎn)彎這一指令。
這個(gè)解釋聽起來不錯(cuò),但卻是完全錯(cuò)誤的。這個(gè)錯(cuò)誤回答的例子很好地說明了為什么 ChatGPT 雖然非常有用,但不應(yīng)該用作權(quán)威的知識(shí)庫。
一些建議
如果 ChatGPT 的回答錯(cuò)誤很多,還應(yīng)該使用它嗎?我認(rèn)為不能依賴它代替你完成任務(wù),但將它作為一種工具仍然是非常有用的。本文游戲設(shè)計(jì)的例子中,在 ChatGPT 回答了游戲所需功能之后,我本可以繼續(xù)提問 ChatGPT 并要求它為我實(shí)現(xiàn)所有功能,事實(shí)上已經(jīng)有其他人這樣做過了,而且有點(diǎn)奏效。不過,我的建議更傾向于將 ChatGPT 作為頭腦風(fēng)暴和加速開發(fā)的工具,而不是完全替代開發(fā)過程中的某些環(huán)節(jié)。
在接下來的更新?(第 3 天) 中,我們將 使用 AI 制作 3D 素材,敬請(qǐng)持續(xù)關(guān)注我們!
英文原文:hf.co/blog/ml-for-games-2?
譯者:SuSung-boy (蘇桑),經(jīng)常倒騰圖像的工業(yè)視覺算法工程師。