• Register

More Blood Splatter Test Screenshots Cyclone Game Engine Basic Car Drifting Physics Screenshots


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. 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

  • Fully functional Sky-box system
  • Volumetric Clouds (needs some improvements)
  • Day & Night-time Cycle (work-in-progress)
  • Deferred Rendering (work-in-progress)
  • Lens-Flare Effect
  • Terrain Support (loaded from a .bmp file)
  • TIFF File Importer support

LIGHT & REFLECTIONS

  • Per-Pixel Lighting
  • Vertex Lighting
  • Point Lights (work-in-progress)
  • Spot Lights (work-in-progress)
  • Directional Lights (work-in-progress)
  • Light Types: Diffuse, Specular and Color


PARTICLES & WEATHER

  • Cutomizable 2D/ 3D GPU Particle System
  • Blood Splatter
  • Rain & Snow
  • Wind

PLANTS & VEGETATION

  • Grass billboards
  • Procedural L Trees Lib (WIP)
  • Trees Animation


SHADERS & POST PROCESSING EFFECTS

  • Bloom (got working recently)
  • Water Shader
  • Shadow Mapping with screen space blurring (soft shadows)
  • Radial Blur Effect (WIP): this effect will be used to visually show speed when flying or driving at extremely high speeds
  • Real-Time Fur Shader
  • Real-Time Reflection Shader
  • Underwater Effect (WIP)


MODELS & ANIMATION

  • Giff Animation Library
  • Xbox Avatar Support
  • XNAnimation 4.0 Library
  • Robot Animation Processor
  • 3D Model Types: DirectX, FBX and Obj (Collada file support is in the works)


PHYSICS

  • JigLibX 4.0 (handles the 3D collision): I have highly modified the Jiggle Physics Library to run on XNA 4.0 and MonoGame. I am extending and improving it in many ways. To help with JigLibX's physics performance on Xbox 360, I am changing its foreach statements to for and I will be adding separate loading threads to help improve the low frame-rate issues. JigLibX also makes extensive use of the "float" object. I mention this because the Xbox 360 has some issues processing floating points. So I am changing out all the floats to avoid major physics performance issues on the Xbox 360.
  • Character Physics:
  • Vehicle Physics: The car object class for the JigLibX physics engine has also been extended to support better handling.
  • Water Physics (WIP)
  • Ragdoll Physics
  • Farseer (handles the 2D collision)


AUDIO

  • 3D Sound Positioning
  • Microsoft XACT is a great tool to implement sound into the game but I am also exploring new techniques with sound


LEVEL EDITOR

  • Neoforce by Tom Shane: This will be used as the GUI for the editor
  • Object Scene Management: Rotate, Scale or Translate objects along any of the three axes either individually or by a group (Work-In-Progress)
  • Terrain Engine & Editor (Work-In-Progress): As of right now, the game engine can render a simple terrain that can be scaled at any size. A height-field bitmap is used to describe the terrain. The height-map processor which is the custom content pipeline for the terrain converts that bitmap image into geometry. The engine extracts the triangles from the terrain and creates collision for it.


GAMEPLAY

Cameras

  • First-Person Camera: this camera is a simple FPS camera with spring physics that is attached near the player's head level. The camera is a perspective camera used to see the game in 3D. The first-person camera also includes shaking functionality. This is a great effect to used to increase immersion when sprinting, shooting in this perspective and to simulate an earthquake effect.
  • Chase Camera: this is a third-person camera is used to follow vehicles as the player controls them. The chase camera has spring like physics as well.

Heads-Up-Display (HUD)

  • Ammo Count
  • Weapon Selection Menu
  • Timer (for online play)

Inventory System

Split-Screen Support


ARTIFICIAL INTELLIGENCE (AI)

  • Obstacle Avoidance using Steering Behaviors
  • Path-Finding Navigation using A-Star
  • Chase & Evade Functionality with Turn-2-Face Algorithm

    I made a sample program that will be placed in the engine soon. It utilizes both steering behaviors to avoid obstacles that are enclosed in bounding spheres and path navigation through a graph to avoid obstacles that are enclosed in bounding squares.


INPUT

  • Mouse & Keyboard
  • Xbox 360 Controller

PLATFORMS
MonoGame project templates of the game engine have been created to support multiple platforms

  • Android
  • Linux
  • Mac
  • OUYA
  • PS4 (Have to be registered through Sony to obtain their dev kit)
  • Windows PC
  • Windows Phone
  • Xbox 360
  • Xbox One (Have to be registered through ID@Xbox)
  • Zune (XNA 3.1 version of the game engine)


PROGRAMMING &
NETWORKING

  • Visual Studio C#
  • XML (Used to define particles and quite possibly levels in the future)


PERFORMANCE & OPTIMIZATION

  • Multi-threading (WIP)


USER-INTERFACE

  • The engine comes built-in with a 2D/ 3D Menu System with transition effects, splash screens, loading screens and a pause screen. Networking functionality for online play is still currently in the works. The menu system displays an animated busy indicator whenever a network operation is in progress. In multiplayer, once in the lobby, a list of gamers is displayed along with icons indicating who is currently talking and who has marked themselves as ready. When all the gamers are ready, the game will load the map.
  • View media
  • View media
  • View media
  • View media
  • View media
  • View media
Articles

No articles were found matching the criteria specified. We suggest you try the article list with no filter applied, to browse all available. Join now to share your own content, we welcome creators and consumers alike and look forward to your comments.

Comments  (0 - 10 of 16)
Jdawgg25 Creator
Jdawgg25

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

Reply Good karma+1 vote
Jdawgg25 Creator
Jdawgg25

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

Reply Good karma+1 vote
Jdawgg25 Creator
Jdawgg25

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.

Reply Good karma+1 vote
Jdawgg25 Creator
Jdawgg25

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

Reply Good karma+1 vote
Jdawgg25 Creator
Jdawgg25

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.

Reply Good karma+1 vote
Brando_3609
Brando_3609

time to swap to xbox one

Reply Good karma Bad karma+1 vote
Jdawgg25 Creator
Jdawgg25

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.

Reply Good karma+1 vote
Jdawgg25 Creator
Jdawgg25

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.

Reply Good karma+1 vote
Jdawgg25 Creator
Jdawgg25

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.

Reply Good karma+1 vote
Jdawgg25 Creator
Jdawgg25

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.

Reply Good karma+1 vote
Post a comment
Sign in or join with:

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.

Follow Report Profile
Platforms
Windows, Mac, Linux, Android, Metro, XONE, X360, PS4, VITA
Contact
Send Message
Licence
Proprietary
Release date
Engine watch
Follow
Share
Twitter

Latest tweets from @cycloneofsteel

I posted a new photo to Facebook Fb.me

Nov 15 2016

I posted a new photo to Facebook Fb.me

Nov 15 2016

I posted a new photo to Facebook Fb.me

Nov 15 2016

I posted a new photo to Facebook Fb.me

Nov 15 2016

I posted a new photo to Facebook Fb.me

Nov 15 2016

I posted a new photo to Facebook Fb.me

Nov 15 2016

I posted a new photo to Facebook Fb.me

Nov 15 2016

I posted a new photo to Facebook Fb.me

Nov 15 2016

I posted a new photo to Facebook Fb.me

Nov 15 2016

I liked a @YouTube video Youtu.be MonoGame Live #6 : XNA Sample Conversion, Localisation

Oct 31 2016

Embed Buttons
Link to Cyclone Game Engine by selecting a button and using the embed code provided more...
Cyclone Game Engine
Statistics
Rank
93 of 709
Last Update
Watchers
9 members
Files
3