Let me be specific. I’m not talking about typical video games with moving, shooting, 3D characters, etc. I’m thinking more like some of the older adventure games where you’d have a map of “Rooms” that the player can navigate through completing various tasks to advance through the game and ultimately win. I’d create video, images and sounds with other tools and then use Xojo for building the game logic and presenting video, images sounds at the proper time from resource files stored in a folder or folders.
Ultimately, I’d like to create a “Game Engine” where all the programming has been done and I’d just provide resource files for the game to the engine. I want to do all the creation myself, so not looking for existing game engines or products to accomplish this.
Jeff Hendrickson even published a war game made in REALbasic. He left years ago due all the changes in the languaje.
Alain Bailleul made a full blown physics engine (ABPE) and was working on Augmented Reality and great animation tutorials using the canvas but he also left xojo due to the crappy decisions of constant languaje changes and renaming.
Joe Strout made an FPS in Realbasic… Same history
Garry published its GameKit like 4 years ago but it was never production ready and could not overcome the poor performance of xojo.
Yeah, I didn’t really expect to find books on adventure programming in Xojo. I was more interested in if others had tried doing it with Xojo. Ivan says many of tried, but didn’t have any success stories. I’m pretty sure I can do what I have in mind with Xojo, I’ll just have to give it a shot.
Back when my son was in High School, he and I created a Guitar Hero knockoff, minus the fancy controllers, just pressing keys on the keyboard. His friends were suitably impressed, though.
To defend Xojo a bit in this case: A game engine based purely on Canvas drawing code will always have a hard time on today’s machines. Just consider the pixel count on a high res screen, and imagine rotating or manipulating part of its contents 60 times a second … There was an Apache helicopter game that the forum was optimising for some time, some years ago, which is as fast as pure drawing code can go. Not enough, but still impressive.
There used to be a Sprite engine included in Xojo many years ago, but it was removed and never replaced with a modern alternative. So once it comes to real time drawing, best would be to extend a pure Xojo game engine with declares into the native 2D or 3D system frameworks, like SpriteKit/SceneKit on macOS/iOS. Or create a new engine that basically declares into a freely available C game engine. Or, but way more complicated, go into the depths of Vulcan programming. Wasn’t it Eugene who built a basic framework for this?
I’ve been impressed with the performance of canvas drawing in Xojo 2023 r4. For instance in my Box2D demo I can easily get 60 fps on my M2 Mac with thousands of particles on the screen and I haven’t really optimised the drawing routines at all.
I believe @John_Balestrieri has a very efficient canvas-based rendering engine for Xojo (search the forum for his posts).
Oh yes, thank you for reminding me! I forgot about the speed improvements 2023r4 brought. Change my words to: You would certainly see enormous speed improvements by incorporating the native game engines still, but if you don’t aim for a 3D action shooter pure Xojo can be sufficient.
Should one revisit the helicopter project one more time?
Thanks for all the great replies. Since I don’t plan to use Xojo to draw things on the screen, but instead play short videos and display images along with text, I think I’ll be just fine. What I have in mind would be Text Adventure like, but with videos and Images.
Yes, definitely worth a try. I built a card game platform with Xojo. I do not do any canvas rendering, it just uses Containers created at run time. Xojo makes it easy to manage game logic and resources etc. If it is of any help, take a look at my website www.mysnaz.com and then enter a Game Code “XOJODEMO” where prompted. That will take you to the Xojo web app - feel free to play with it - get some idea of how Xojo can manage game resources and visuals (the cards are built with containers, which themselves contain images loaded from resource files).