ROB TOM ROE
  • Home
  • Blog
  • Projects
  • Virtex Edge
  • Contact
December 1, 2015 by rtroe

Virtex Edge: Choosing Which Foot to Put Forward.

Virtex Edge: Choosing Which Foot to Put Forward.
December 1, 2015 by rtroe

I’ve been working on Metric Racer for a while now, but the decision to have online multiplayer as well as porting it too Linux means that it’s going to take a lot longer than I initially hopped. So as a step forward I’ve reshuffled the deck so to speak.

I’ve decided to postpone Metric Racer by a year to ensure it gets the polish it deserves and decided to go forward with a game that’s essentially half done already, Euclidean. Euclidean originally started out as a game called Pixel on the now closed (?closing?) Xbox Indie Game Channel that I released in September of 2012.

The lead up to it being released ended up falling in line with me starting a new job in a new city at the time and it showed in the final product of Pixel. It had good ideas, but it being my first program I released, it had a number of bugs and performance issues, it was a textbook lesson in poor execution of a good idea. Needless to say, It’s success was underwhelming. I shelved the project for a little while until expanding on the original idea and decided to give it another shot feeling like there was a lot to expand upon in the game. I’d already expanded on the original levels back in late 2013 with the precursor to Vertices, but it was never more than a hobby I was working on. Now that Virtex Edge is in full swing, I’ve decided it’s best to lead with this one.

Screenshot from Euclidean after I spruced up Pixel.

Sandboxing It All UpThat said though, unlike Virtex’s other projects, at this time, Euclidean will only be available on PC due to the fact that MonoGame doesn’t support Instance Meshes currently. (I think I read somewhere it’s working under DirectX, but not OpenGL…so no Linux Support for the time being).

With Pixel (and even with the original Euclidean code), the original method I had in making the levels was to hard code each level and set up bounds for the level and then write a series of nested for loops of code which created the levels. This made loading the levels easier, but creating them was a lot of visualization coupled with trial and error.

You can see an example of the code below:

[gist https://gist.github.com/b19d852525102bc543e9/]

As you can see above, for some of the larger levels, the code got pretty complicated. Originally I wanted Pixel to have a level editor in it but it just turned out to be too difficult to implement on the Xbox at the time. This time around, since I’ve coded the Vertices Engine to have a Sandbox element to it from the start, it makes not only creating levels easier, but porting them over easier as well. In a weekend I was able to get the original Euclidean Code ported over to Vertices and to get a handful of levels imported and playable in the sandbox environment.

2
Testing Random Cubes in the Sandbox.

With the sandbox now working, it’s a hell of a lot easier to add in items and porting over the original levels. Instead of wrestling with nested foor loops, the process is now:

  • Copy the original for loops into Euclidean 2.0 base level code and running the level in sandbox mode.
  • After a quick check to see if everything loaded okay, Save the file as a sandbox file (A Serialized Class of Entity Data which boils down to essentially an XML file containing all required data to rebuild the level) so that it can be used later on.
  • Clear out the original for loops out of the code and move on to the next level.

This process had allowed me to port the first 4 levels and expand on them with ease within an afternoon.

euclidean import
The result after importing a level. It’s editable straight away in the new sandbox.

I’ll be posting a video of the sandbox very soon.

Related

Previous articlePorting 2D Game Play to MonoGameNext article 3C Version 1.0 Release!

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

About The Blog

Nulla laoreet vestibulum turpis non finibus. Proin interdum a tortor sit amet mollis. Maecenas sollicitudin accumsan enim, ut aliquet risus.

Recent Posts

Game Jam – GatewaysApril 25, 2021
Game Jam – Frequency SyncJanuary 29, 2019
Shader Series – Screen Space ReflectionsJune 26, 2018

Categories

  • 3C – Capture Crop Create
  • 3D Laser Scanner
  • Arduino
  • Asia
  • Chrome Addins
  • Dev Blog
  • DIY
  • Game Jam
  • Metric Racer
  • MonoGame Tutorials
  • Music
  • OpenCascade
  • Programming
  • Quadcopter
  • Shader Series
  • Shaders Tutorials
  • Space Esc8bit
  • The Chaotic Workshop
  • Traveling
  • Tutorial
  • Tutorials
  • Uncategorized
  • Vertices Engine
  • Videos
  • Virtex Dev Blog
  • Virtex Edge Design

Meta

  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org

Tags

3D 8-Bit AdMOb Ads android Animation Apollo Apollo 11 Audio Audio Puzzle C# Editor Electronics featured Game Dev Game Development Game Engine Gaming Github GLSL Graphics HLSL Japan Javascript Linux Mobile MonoGame NASA OpenGL Optimizations Programming Projects Screen Space Reflections Shaders Source Code SSR Terrain Editor tools Transparency Tutorial Vertices Virtex Edge Design WebGL wxWidgets XNA

Recent Posts

Game Jam – GatewaysApril 25, 2021
Game Jam – Frequency SyncJanuary 29, 2019
Shader Series – Screen Space ReflectionsJune 26, 2018

Categories

  • 3C – Capture Crop Create
  • 3D Laser Scanner
  • Arduino
  • Asia
  • Chrome Addins
  • Dev Blog
  • DIY
  • Game Jam
  • Metric Racer
  • MonoGame Tutorials
  • Music
  • OpenCascade
  • Programming
  • Quadcopter
  • Shader Series
  • Shaders Tutorials
  • Space Esc8bit
  • The Chaotic Workshop
  • Traveling
  • Tutorial
  • Tutorials
  • Uncategorized
  • Vertices Engine
  • Videos
  • Virtex Dev Blog
  • Virtex Edge Design

Tags

3D 8-Bit AdMOb Ads android Animation Apollo Apollo 11 Audio Audio Puzzle C# Editor Electronics featured Game Dev Game Development Game Engine Gaming Github GLSL Graphics HLSL Japan Javascript Linux Mobile MonoGame NASA OpenGL Optimizations Programming Projects Screen Space Reflections Shaders Source Code SSR Terrain Editor tools Transparency Tutorial Vertices Virtex Edge Design WebGL wxWidgets XNA
Rife Wordpress Theme. Proudly Built By Apollo13

ROB TOM ROE

I’m an Entrepreneur, Software Developer and Mechanical Engineering Grad. I started out working in the Energy and Nuclear safety sector as well as Aircraft Design, Repair and Stress analysis. In 2015 I started Virtex Edge Design , a software and game development company.

Recent Posts

Game Jam – GatewaysApril 25, 2021
Game Jam – Frequency SyncJanuary 29, 2019
Shader Series – Screen Space ReflectionsJune 26, 2018

Categories

  • 3C – Capture Crop Create
  • 3D Laser Scanner
  • Arduino
  • Asia
  • Chrome Addins
  • Dev Blog
  • DIY
  • Game Jam
  • Metric Racer
  • MonoGame Tutorials
  • Music
  • OpenCascade
  • Programming
  • Quadcopter
  • Shader Series
  • Shaders Tutorials
  • Space Esc8bit
  • The Chaotic Workshop
  • Traveling
  • Tutorial
  • Tutorials
  • Uncategorized
  • Vertices Engine
  • Videos
  • Virtex Dev Blog
  • Virtex Edge Design