I Join Bullfrog, Riccitiello buys it and destroys it. I join Pandemic, Riccitiello buys it and destroys it. I spend 10 years learning and releasing games on Unity, Riccitiello is hired to manage it, and destroys it.
Mike Diskett
1,358 posts
Tek Director at 5 lives studios, made Satellite Reign,Windbound. Ex Bullfrog, Ex MuckyFoot, Ex Rock* North, Ex Visual Science, ex Pandemic, ex THQ, ex ...
- So you want to make a game engine.. I've made or used many across 30 years of game dev in many AAA studios and indie. Heres my advice for best engine practises.. 🧵 1/12
- Replying to @matiasgoldbergMaybe I shoule retire and hope he follows me there, for the good of game devs everywhere..
- Replying to @MikeDiskettAt sega we made a Unity 3 functional equivalent editor/engine with much better workflow than even unity 2023 with 4 engine coders and a few game coders in 2 years and shipped castle of illusion to 7 platforms, then sega EU shut the studio not knowing what they had. 12/12
- Replying to @MikeDiskettEditor and Runtime are seperate processes. Editor Holds the scene graph and component data, runtime draws the game and receives the scene from the editor process as it changes (using networking) 2/12
- Replying to @MikeDiskett13/12 Counter argument: An engine doent have to be any of the above or the best engine ever, it can just be the the minimum you need for the game you intend to ship..
- Replying to @MikeDiskettEditor is off the shelf, we used .net and xml for scene graph (at sega) , and inspectors were easy. Editor never crashes its very very simple code, runtime is complex, if it crashes just relaunch and it connects to editor nothing is lost. 3/12
- Replying to @MikeDiskettAsync on demand load all assets, want to draw asset guid X and its not loaded use a cube, want texture that isnt loaded use the temp chequerboard, the user should never have to wait for some massive set of assets to be processed/loaded 5/12
- Replying to @MikeDiskettGive every damn instance thing a permanent guid, dont be like unity randomizing ID's of game objects every time a scene is loaded. 10/12
- Replying to @MikeDiskettRuntime acts as a scene view, and runs the gameplay code, it can run on target platform and connect to the editor for live editing on any target platform from any machine running the editor 4/12
- Replying to @MikeDiskettIteration is key, Make iteration fast! 11/12
- Replying to @MikeDiskettNested Prefabs are almost essential, expect to take a man month implementing them (not 6 years like unity) 8/12
- Replying to @MikeDiskettSubScenes are easy in XML, break any node off as its own sub document, but really any decent tree based structure is going to be easy to do proper subscenes. took unity years and they still did it very badly. 6/12
- Replying to @MikeDiskettA simple deferred renderer with cascade shadows will go a long way to give you 90% of the game visuals you need, probably a gazillion on github.. 9/12

