Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 17 Jun 2012
Offline Last Active Jul 02 2015 05:26 AM

Posts I've Made

In Topic: C++ as a scripting language

02 July 2015 - 05:14 AM

Check out http://runtimecompiledcplusplus.blogspot.com/. The code is available at https://github.com/RuntimeCompiledCPlusPlus/RuntimeCompiledCPlusPlus. At least one integration example to an existing game engine can be found http://urho3d.prophpbb.com/topic308.html.


Runtime Compiled C++ is also used in http://kythera.ai/ which is in StarCitizen and other titles such as Umbra https://umbragame.com/


Unsurprisingly since I'm the author of RCC++ it's also in my game http://www.avoyd.com


Lots of edits to this, as by heck is the editor great at losing what you type if it can't parse it.

In Topic: How To choice the GUI sdk for creating a world edit(like crysis::sandbox)?

03 April 2014 - 10:36 AM

UE4 IDE is most likely written in  WPF, and what I have seen from the code videos is that they use C++ and C# code, so I highly doubt that VB has been used there.


UE4's UI is written using their own UI called Slate running on top of thier rendering layer - so a port of the rendering engine leads to a port of the editor UI, which is handy.


A common approach is to use web technology, either through an embedded simple web server in your game or by embedding Webkit such as the Chromium Embedded Framework (other alternatives can likely be found through a search on these forums).

In Topic: Octree-based voxel lighting system

28 December 2013 - 04:37 PM

I find it difficult to implement a good LOD in a voxel system that have seamless transitions when you change the distance. In your movie clip, there is such a change at 19s.


Yes, it's tricky. Eric Lengyel's transvoxel algorithm is one of the best for marching cubes (http://www.terathon.com/voxels/), and Miguel Cepero's Voxel Farm seams are pretty decent http://procworld.blogspot.fr/2013/07/emancipation-from-skirt.html, though I'm not sure what technique he uses as he has dual contour voxels. I use simple skirts for now with the skirt normal adjusted to minimize transition contrast, though I've not had time to cater for certain edge cases such as the one you spotted.


The main issue with shadow maps for me is the lack of light propagation in occluded volumes, such as caves. Otherwise they're great.

In Topic: Octree-based voxel lighting system

28 December 2013 - 01:36 PM

Funnily enough I've been thinking about the lighting system in my own work recently, and there's some similarities as I'm using an Octree as well.


You can probably do decent per-vertex lighting the Minecraft way by subdividing the large voxels. In my own game I subdivide large nodes to the smallest voxel size for nearby regions, and use higher nodes of the branch of the Octree for level of detail in the distance. Hopefully you can see the LODs working in this (debug rendering) video. Using this approach has the advantage of fast vertex generation without seams, using skirts between LOD regions. So if you use this approach and have slow moving  or stationary lights you should be able to do fairly decent lighting which gives you some global illumination like properties.


I'd disagree that deferred rendering doesn't scale well - indeed that's it's purpose. Culling can be done via tiles in DX11+ (or equivalent in OpenGL), see Andrew Lauritzen's work, or you can use the stencil buffers. I've been considering using the voxel octree itself to do CPU side culling, but haven't looked into it yet.


I'm also considering voxel cone tracing or light propagation volumes, doing the work CPU side using the octree and then uploading the results asynchronously to either a light-map or 3D texture cascade. I've no results or even back of the napkin calculations of feasibility yet, but  will try to blog the results when I do.

In Topic: Spherical Wave expansion effect

23 September 2013 - 10:16 AM

I think I would be tempted to use a post process effect for this.


Calculate the radial distance using screen position and depth, you should be able to google for how to do this, then if this radius is smaller than the current 'sphere radius' you output the colour data from your colour buffer, and if it's larger you apply an edge filter to draw outlines. This won't draw polygons as such, so if you want that effect you may need to draw polygon edges or a per triangle colour which you then edge filter into another buffer.