Cyclone Game Engine is a cross-platform 2D/ 3D engine built upon the MonoGame and XNA Frameworks to help make it easier and save time creating games. The engine is built with a large degree of flexibility in mind. Due to its highly extensible and adaptable comprehensive code, it can easily be customized to suit the creation of any type of game. The game engine was primarily built to serve the needs of Steel Cyclone Studios' game projects. It takes care of many things such as physics, lighting, animation, audio, input, GUI, particle effects, and artificial intelligence. The engine will eventually be open-source and available to all. For more information, check out the engine overview at: Jordonmd.blogspot.com.
ENGINE SUMMARY
The game engine is not perfect by any means. The game engine is still in its infancy stages of development which is why I haven't made it available yet to the community. Once it is further developed, I will release it. I am curious to see how others will use this tool one day; possibly in ways I never thought or imagined. The Engine Facts Sheet will be updated over time so stay tuned.
GRAPHICS & RENDERING
LIGHT & REFLECTIONS
PARTICLES & WEATHER
PLANTS & VEGETATION
SHADERS & POST PROCESSING EFFECTS
MODELS & ANIMATION
PHYSICS
AUDIO
LEVEL EDITOR
GAMEPLAY
Cameras
Heads-Up-Display (HUD)
Inventory System
Split-Screen Support
ARTIFICIAL INTELLIGENCE (AI)
INPUT
PLATFORMS
MonoGame project templates of the game engine have been created to support multiple platforms
PROGRAMMING & NETWORKING
PERFORMANCE & OPTIMIZATION
USER-INTERFACE
Originally created by David Ang, this demo showcases a tower defense game where entities (spiders and marines) try to reach a destination (blue fiery portal) while avoiding obstacles using either steering behavior (spiders) or A* (marines) pathfinding. Tanks have been added as towers that rotate to face the furthest entity within its range. Particle effects are utilized to show starting points and destination points. This demo outlines the code for the entities avoiding obstacles with a bounding sphere and finding a path using A*. This 3D sample also implements particle systems defined by XML files loaded with the Content Pipeline. The XNA 3.1 demo can be found HERE
Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.
MonoGame is now compatible with Nintendo Switch!! First titles will be Tower Fall and Stardew Valley with multi-player!!
Are you wanting to learn Game Design, Game Art and or Game Programming? Unsure about how to get started? Worried that you don't have the time, patience or money? I've been burning the midnight oil these past couple of weeks expanding the Resources page on my game engine blog. This page is essentially the majority of my resources and research I have gathered for a long time now. All of it has been thoroughly organized.
I've created this page to help not only myself but for everyone else to have access to. These resources are all free for the most part. This page provides everything from free online eBooks, to Tutorials, Starter Kits and so much more! Essentially, its like having your own personal virtual school at your disposal to learn all of this information. I am gradually improving this page, so check back for more future updates. Here is the link: Jordonmd.blogspot.com
Finally! It was just announced MonoGame is coming to Xbox One. MonoGame implements XNA 4.0 and allows developers to port their games to other platforms besides the default platforms supported already by the XNA 4.0 Framework. Here is a link: Twitter.com
With MonoGame 3.4 (which is the continuation of XNA 4.0) for Visual Studio 2015, it is now possible to create a game for Universal Windows Platform (UWP). This also makes it possible to get your XNA project to run on Windows 10 with UWP. Since the Xbox One dev kit supports UWP, it might also be possible to get a MonoGame project running on it.
If anyone is curious, it is possible to integrate your XNA Game Project into Unity, but it might take a little extra work. This is a proof of concept showing the Platformer XNA starter kit running inside Unity3D. Zero code changes have been made to the original game code. Using a mixture of new code and some code from MonoGame, the author has implemented XNA emulation. They did so by having a game object with a script attached run an XNA game performing updates and drawing.
Check out this link below for source code:
Github.com
Steel Cyclone Studios is looking into the XBOX ONE Dev Kit since it now supports Indie Games. Eventually the studio will apply into the program to become registered developers and to receive Xbox One development kits. Games that come through Xbox have full access to the entire Live suite of tools and technology, including Gamerscore, Achievements, and Kinect.
time to swap to xbox one
If I can get models with more polygons to run on Xbox 360 without any rendering or slow performance issues which is another challenge, then the games will be more than capable of running that same level of detail if not more on next-gen platforms. My goal someday with the Cyclone Engine is the have it capable of rendering Unlimited Detail not just on next-gen platforms but on platforms whose hardware may not be as advanced. Sorry for such a long reply with all of the comments. I think the limit is 2000 characters per comment so I had to break everything up into chunks. Thanks for the comment and I would greatly appreciate your support.
I am trying to program and design the Cyclone Engine in such a way that it takes the Xbox 360’s limitations in mind. The .NET runtime implementation on the XBOX 360 is not perfect. For starters, it only performs level 0 garbage collections; that means it performs the collection in all the game data and that is terrible for performance and frame stability. Moreover the arithmetic implementation is not fast. I am trying to make the Cyclone Engine ‘garbage free’ and for the engine to take in consideration the arithmetic performance. Furthermore the XBOX 360 only has 512Mb of shared memory. So I am getting the engine to reduce memory consumption, especially in render targets. The EDRAM (a cache for render targets) of the XBOX 360 has only 10Mb of memory. As a result the G-Buffer is confined in this area (forcing the user has to use the recommended resolution). And of course there are other XBOX 360 hardware limitations that I am getting the engine to consider.
This will allow me to learn from my mistakes, create patches and fix any bugs. My biggest challenge once the game engine is more fleshed out is meeting the indie game distribution restrictions on Xbox Live Indie Games that many players are unaware of. To develop a game on 360 for indie, your game must be no larger than 500MB which is not a lot of memory (especially for 3d games). Originally it was 150MB. Games larger than 500MB are to be priced at 240 Microsoft points. Also, an eight minute trial period is enforced on Xbox Live Indie Games. I am aware of the next-gen console’s hardware and that it allows developers to increase their poly count with the available amount of RAM. I don’t want the Cyclone Engine to be too dependent on hardware specs to have the level of graphics that many games on store shelves have.
As much as I would like to make a game for Xbox One, it would be extremely difficult and it has nothing to do with the system specs. I am developing my first game as an Xbox Live Indie Game for 360 because you can self-publish on Xbox 360. I would have to get a publishing deal with either Microsoft or a 3rd party publisher to get my game(s) on Xbox One. Although the Indie Game section on Xbox 360’s Marketplace is not as ‘lucrative’ as the Arcade section on 360, this will be a great learning experience for me. Because I am an indie developer, it will be tough for me to compete with other titles on Xbox One and that’s why I am sticking with PC and Xbox 360 for now. I chose to compete with titles under Xbox Live Indie Games for now because this seems realistic and will help me build up some experience. With my first game, I know there might be many bugs and glitches. Xbox Live is great because they allow game updates.