GPT-4寫代碼,DALL·E 3+MJ搞定畫面,AI版「憤怒的南瓜」來襲
自 GPT 系列對話大模型以及 DALL?E、Midjourney 等文生圖大模型興起以來,基于它們的硬核、有趣二創(chuàng)應用花樣頻出,讓普通人切身地體驗到了大模型的魅力。
今天又一個這樣的游戲項目引起了我們的注意。
推特用戶 @javilopen 使用 GPT-4、DALL?E 3 和 Midjourney 編寫了小游戲「憤怒的南瓜」(PS:如有雷同純屬巧合),其中 GPT-4 負責所有的編碼工作,DALL?E 3 和 Midjourney 負責圖形部分。
游戲畫面、效果怎么樣呢?從以下幾張動圖來看,似乎是分辨不出它是大模型生成的。
小伙伴們也可以試玩,還能自己創(chuàng)造關(guān)卡。不過,它目前還不支持手機端運行。
試玩地址:https://bestaiprompts.art/angry-pumpkins/index.html
接著來看這款「憤怒的南瓜」的實現(xiàn)流程和 prompt 細節(jié)。
首先是圖形,這也是最簡單的部分。以下是 prompt 分享:
標題屏幕(使用 GPT-4 里的 DALL?E 3):名為「Angry Pumpkins」電子游戲的橫向主屏幕圖片。設計參考「憤怒的小鳥」美術(shù)風格,但又有所不同。鬼屋、墓碑和蝙蝠等萬圣節(jié)元素填充背景。游戲徽標位于中心頂部的顯著位置,兩側(cè)是生氣、虎視眈眈的南瓜造型。底部中央有一個「Play」按鈕,周圍環(huán)繞著陰森恐怖的霧氣。
"Photo of a horizontal vibrant home screen for a video game titled 'Angry Pumpkins'. The design is inspired by the 'Angry Birds' game aesthetic but different. Halloween elements like haunted houses, gravestones, and bats dominate the background. The game logo is prominently displayed at the center-top, with stylized pumpkin characters looking angry and ready for action on either side. A 'Play' button is located at the bottom center, surrounded by eerie mist."
背景圖(使用 Midjourney),作者使用了一張圖片作為背景(并進行了多次修補),圖片的 prompt 為:iPhone 截圖中「憤怒的小鳥」的天際線,萬圣節(jié)版,墓地,風格為淺海藍寶石和橙色,新傳統(tǒng)主義,kerem beyit, earthworks,木頭,Xbox 360 圖像,淺粉色和海軍藍 —— 比例為 8:5。”
"Angry birds skyline in iPhone screenshot, Halloween Edition, graveyard, in the style of light aquamarine and orange, neo-traditionalist, kerem beyit, earthworks, wood, Xbox 360 graphics, light pink and navy --ar 8:5"
另一張裁剪之后用來生成地面:2d 平臺、石磚、萬圣節(jié)、2d 電子游戲地形、2d 平臺游戲、萬圣節(jié)場景、類似于憤怒的小鳥、萬圣節(jié)場景、截圖、游戲資源 —— 比例為 8:5。
"2d platform, stone bricks, Halloween, 2d video game terrain, 2d platformer, Halloween scenario, similar to angry birds, metal slug Halloween, screenshot, in-game asset --ar 8:5"
接下來,就要生成游戲中的角色了,作者使用 Midjourney 完成了創(chuàng)作。
- 萬圣節(jié)南瓜,游戲精靈圖,萬圣節(jié)版,簡易精靈圖,2D,白色背景
- 萬圣節(jié)綠色怪物,憨態(tài)可掬,游戲精靈圖,萬圣節(jié)版,簡易精靈圖,2D,白背景
"Halloween pumpkin, in-game sprite but Halloween edition, simple sprite, 2d, white background"
"Green Halloween monster, silly, amusing, in-game sprite but Halloween edition, simple sprite, 2d, white background"
當然,游戲中的物體也是作者使用 Midjourne 制作的。作者創(chuàng)建了各種精靈圖樣式表,然后用 Photoshop/Photopea 裁剪并移除背景。對于小細節(jié),作者使用 Midjourney 進行修補。
- 木箱,物品資源精靈圖,白色背景,游戲精靈圖。
- 骷髏骨,大型骨骼,物品資源精靈圖,白色背景,游戲精靈圖。
- 長方形石頭,物品資源精靈圖,白色背景,游戲精靈圖。
- 木箱,大型骨骼,物品資源精靈圖,白色背景,游戲精靈圖。
- 物品資源精靈圖,木板,白色背景,游戲精靈圖,類似「憤怒的小鳥」風格。
"Wooden box. Item assets sprites. White background. In-game sprites"
"Skeleton bone. Large skeleton bone. Item assets sprites. White background. In-game sprites"
"Rectangular stone. Item assets sprites. White background. In-game sprites"
"Wooden box. Large skeleton bone. Item assets sprites. White background. In-game sprites"
"Item assets sprites. Wooden planks. White background. In-game sprites. Similar to Angry Birds style"
最后編程部分使用了 GPT-4。作者表示,這個游戲的代碼僅有 600 行,完全由 GPT-4 代寫。
完整代碼可見:https://bestaiprompts.art/angry-pumpkins/sketch.js
作者在游戲中加入了很多細節(jié),比如不同的粒子效果、不同種類的物體。不過到目前為止,GPT-4 還不能僅憑一個 prompt 就能生成完整的游戲。
因此,他使用的竅門是循序漸進向 GPT-4 提出要求,這與人類編程方式相似,先從簡單可行的基礎開始,然后不斷迭代、拓展、優(yōu)化代碼。
他使用了一些小技巧和 prompt,首先從簡單的事情開始做起,比如「我能不能使用 matter.js 和 p5.js 創(chuàng)建一個憤怒的小鳥風格的游戲?只需要用鼠標控制,設定好發(fā)射角度和力度,然后撞擊一堆由 2D 物理效果堆疊的箱子。」
接著持續(xù)添加更多的元素和功能,遇到問題詳細說明錯誤的地方,讓程序自我修正。比如「現(xiàn)在我問你,你了解憤怒的小鳥游戲中玩家在屏幕上滑動手指來發(fā)射小鳥嗎?把這種方式添加到要創(chuàng)建的游戲里,不過要改成用鼠標控制?!?/span>
再比如「把怪物設計成圓形」、「我想用粒子效果制作一個火炬,是否可以通過 p5.js 來實現(xiàn)?」如此種種,不斷與 GPT-4 進行交互試驗,最終有了現(xiàn)在的游戲效果。
這個純 AI 版本的「憤怒的南瓜」,你心水了嗎?