Cours LUA: How lua brought the dead to life

Extrait du cours LUA: How lua brought the dead to life

Don’t sue me!
This is a presentation about how Lua was used in Grim Fandango, an adventure game by LucasArts
I don’t work for LucasArts anymore
–However, all materials are used with their permission (official text to follow)
I do work for Sony Computer Entertainment America
–However, I am not speaking in any official capacity
-I have to go back to work later… 🙁
What’s an adventure game?
In this case:
-Characters (3D models and 2D sprites)
-Environments (pre-rendered backgrounds with z-channel)
-Story (text display engine, cutscenes)
-Puzzles (creative writing and design)
●Includes 8000 lines of dialog!
Why use a scripting language?
Glue!
–95% of animations and cutscenes are custom
-scripting language is key to reducing weight
-Clean separation of engine from content
Example:
●actor guybrush walk-to banana-tree
wait-for-actor
actor guybrush say-line “Mmm, bananas…”
actor guybrush face-camera
actor guybrush say-line “Wish I had a banana-picker”
What existed (I)
SCUMM: Script Creation Utility for Maniac
Mansion
– SCUMM is really just the language
– SPUTM (interpreter aka game engine)
– FLEM, BYLE, etc. for creating assets
Proven technology
– Used in dozens of shipping titles
– Multi-platform
What existed (II)
Huge pedigree of beloved games
– Maniac Mansion, Secret of Monkey Island I & II, Sam and Max, Day of the Tentacle, Full Throttle…
Talented designers and artists
What existed (III)
..and me!
– One naïve coder fresh out of school
Why screw it up then?
●Concurrent projects pushing technology envelope
–Jedi Knight, a 3D FPS with great coders
– Outlaws, a 2.5D FPS with great coders
●Smart people I could steal from!
●New look needed
– 3D was the new black
– SCUMM didn’t speak floating-point
●Nobody stopped me
– Though they predicted doom
Lua hacks made
●I had no idea what to call these at the time
– Cooperative tasking
●Added language primitives for iterating over/inspecting them
– Stackless Lua
●Completely by accident
● More could have been done
– State serialization/deserialization
………

Si le lien ne fonctionne pas correctement, veuillez nous contacter (mentionner le lien dans votre message)
Cours LUA: How lua brought the dead to life (121 KO) (Cours PDF)
Cours LUA

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *