Blockchain Gaming Anyone?
Skycoin’s CXFX will lead a gaming revolution!
This is the first in what will be a series of unofficial updates for CXFX.
Skycoin is making strides with its custom general purpose blockchain programming language CX, shown by the recent releases of CX version 0.6, 0.6.1 & 0.6.2.
While the CX team were hard at work, one man; yes, one man!
Took it upon himself to start working on a CX games engine to facilitate and simplify the creation of games using CX.
Over the last few months, I have been watching eagerly as CXFX (The CX game engine) begins to take shape, seemingly starting from nothing.
“First focus is the game library in order to facilitate the development of games and attract developers who can contribute back into CXFX.” @rd2dbug — Creator of CXFX
My introduction to CXFX was in late January 2019 via this Batch Tutorial.
Intrigued, I continued to follow the development being continuously surprised at the amount of progress, and effort going into development.
For instance, the testing and support for Physically Based Rendering (PBR) features such as:
- Normal Mapping
- Emissive Mapping
- And Occlusion Mapping
But I’m getting ahead of myself, let me guide you through it!
After the batch tutorial, we saw a red cube… Sounds insignificant, yet it signified the start of glTF model testing. (glTF is a file format used by game libraries to load 3D content exported from modelling software.)
As you read on you’ll see just how far everything has progressed in a short amount of time, it’s actually quite amazing!
If you’re interested in participating in the creation of this awesome project make sure you check out this article.
All hands on deck!
Out of the darkness, we saw a monstrosity emerge with gleaming eyes and a bill capable of crushing the strongest man… A pity it squeaks when you squeeze it, sort of removes the fear aspect!
Yes, It was a mighty black, and soon to be yellow ducky that would be responsible for testing textures and shadows.
(Note: the framerate of all gifs is not representative of what’s being achieved using the game engine)
Looking a bit naked and plain, the next step was to emphasize those curves and bring ducky to life with the magic of shadows.
Not wanting to obsess over a duck for too long the creator decided it was time to move onto other things before people got the wrong idea…
Now I know what you’re thinking! “How can you top ducky!?” We’ll; reader of words, cast your eyes below to the semi-rainbow of fluorescent balls…
These balls aren’t just good to look at, their purpose was for testing textures and reflections. You might also notice the addition of a picturesque backdrop.
Beautiful, I know! Yet the creator was just getting started with his monumental creation. Normal Mapping was next to break ground.
Now, it’s at this stage that the creator decided he’d made a grave mistake diverging from ducky! Professing his obsession, he decided everything looks better in chrome and slapped a thick coat on the duck. Now everyone could admire their reflection while staring at this lifeless creature.
After an intervention of sorts, it was time to move on to Emissive Mapping.
Emissive Maps are “A texture that receives no lighting, so the pixels are shown at full intensity. Also called a Fullbright Map, Glow Map, Incandescence Map, or Self-Illumination Map.”
Next on the list was Occlusion Mapping, which Google kindly told me…
“is used to provide information about which areas of the model should receive high or low indirect lighting. Indirect lighting comes from ambient lighting and reflections, and so steep concave parts of your model such as a crack or fold would not realistically receive much indirect light.”
Finally, our red glTF model cube from earlier evolved, with the addition of articulated animation playback it was able to spin, expand and move with what might be described as finesse, but probably not…
I’ll round this article off there with an announcement that the demo game for CXFX is currently being developed and has been dubbed “Skylight”, details are on the anorexic side at this point, however, I’ll update you in the next instalment!