Spellcaster Studios

Make it happen…

Compute Shaders

Started today with compute shaders… The concepts behind them are a bit weird at first, especially the relation between threads and groups, read/write orders, barriers, etc…

Anyway, I made some headway and I have a naïve compute shader that sums all elements of an array… Impressive, I know, but it’s a start… Now I can expand that, optimize it and make a better framework for tests…

Work on Gateway has been stalled because I’m preparing my new job and finishing off the old one… Time is a commodity! Disappointed smile

DirectX 11

Continuing to learn stuff I’ll need for my new job… Today it was a day for learning DirectX 11… This wasn’t that hard, since I’m very experienced with DirectX 9.0, and 11 is not that different… It’s just a bit more organized in places, and there’s some new concepts (which I usually implemented at a different level anyway).

So I created a small framework to learn DirectX 11, especially compute shaders (although I haven’t started that yet).

image

Wonderful, I know! I’m focused on the compute shader part, not the rendering, so that’s good enough for now… Smile

Now listening to “Whispering Jack” by “John Farnham”

Physics in UE4

Started working with physics on UE4, combined with making a small physics-based game…

Untitled

The game will consiste of a platform and some cubes falling on it, and the player has to use it’s own weight to balance it… pretty simple stuff, but it should provide me with enough stuff to keep me busy learning UE4.

Physics are relatively simple to make work, although I had some issues with using a scaled sphere as a platform, since it didn’t register the collisions properly… Think the problem was the scaling, but that seems odds in an established engine like UE4…

The shadows on UE4 are also annoying me… they seem to work worse than the ones on SurgeEditor, which is odd:

UE4_Shadows

There’s probably some hidden parameters that makes this work well, but I’ll be damned if I can find them!

Now listening to “Oceanborn” by “Nightwish”

More UE4

Still learning UE4… Ran through most of the tutorials and the development/programmer guides, so I have a good grasp on how things work (although I couldn’t actually do anything by myself yet)…

Untitled

Now I have three things I can do:

  • Try to build a small game using UE4
  • Learn PhysX (that will be important in my future work)
  • Learn ComputeShaders (that will also be important in my future work)

I’m thinking a good idea might be to combine the first and the second: build a small game that uses physics, but I’m afraid that will be a bit complicated to start off…

I’ll sleep on it and see what I feel like doing tomorrow! Smile

Now listening to “Massive Addictive” by “Amaranthe”

Learning UE4

Today I started learning UE4… As I think I mentioned before, I got a contract job which will start in November… For that work, I’ll have to work with Unreal Engine 4, so I need to learn it before I start…

My first contact with it wasn’t that good… It takes forever to compile, run, create projects, add classes, and so forth… The documentation isn’t that good (although I’ve seen way worse!), and some of the samples are a bit broken…

But, after that, it’s turning up to be fun experience… The overall design of UE4 isn’t that different from Spellbook (in very loose terms), and even the editor-based code and reflection is very similar to what I built for my own editor, so I’m quite confortable wadding in the code…

I still have a lot to learn (currently, I’m just going through the tutorials and guides), but I want to see if I can manage to make a small game (maybe one of my archived 48 hour games) in it, see if I can get a nice grasp of it before moving to the stuff I’ll actually have to make…

So, no Gateway development for a while, unfortunately…

Now listening to “Tellurian” by “Soen”

The saga continues…

So, as the title implies, I’m still fighting the machine… In this case, my PC…

First, I forgot to installl one zillion things, so everytime I want to do something I have to install something…

Then, I decided to put in the new SSD and the new video card… The problem was that I apparentely ordered the wrong video card… I thought the new video card was smaller than the previous one, but that ended up not being the case:

screen726

The one on top was my Saphire ATI R290X… The one on the bottom is my new Gigabyte GTX970 Windforce… So, about 3 cms more…

I ended up having to disconnect everything in the case, rewire it and leave a SSD hard drive hanging to get everything inside…

It was well worth it, since although the cards should be more or less similar, the 970 blows the R290 on the benchmarks I tried!

Also put in the SSD in the machine, which cut the compile time for Gateway from 6 minutes to 2, and on Unreal Engine from 2h to 50m…

So all in all, it was a win, but with that and the work I’m finishing for my ex-employer, I ended up with no time to work on Gateway today…

Link of the Day: Homeworld! Homeworld! Homeworld! And an interesting presentation on automatic camera systems:

Finishing installations and such…

So back “online”, after I formatted the PC and reinstalled everything I need… Now that was boring… Disappointed smile

Anyway, today also arrived my new components, so I’ll spend the rest of today and most of tomorrow setting them up:

IMG_0169

Some of my codebases take forever to compile because I was using a mechanical HD for it… UE4, for example (which I’m currently learning) takes about 1h30 to compile, and my own game takes about 10 minutes for a full rebuild… So, hopefully the 480Gb SSD I bought for this will do the trick…

Video card is to help me delve into Compute Shaders… On my work PC I’m using a ATI Radeon HD5800, which already has some difficulty running “Gateway”, let alone Compute Shaders… Open-mouthed smile I’ll miss having to fight the limitations of the R5800 (since it helps me with keeping things optimized), but I’ll keep that one around for compatibility testing…

Useless day…

So today, my Windows install died… :\

Might have been a coincidence, but that “Get Windows 10” thingy came back today, and I removed it again, as I’ve done in the past, but after the restart, the computer was getting stuck on the “Installing updates”… Left it for a couple of hours, and the mouse wasn’t moving, so tried rebooting it some times, tried going into safe mode (same issue), and after I tried everything on the Internet I could find on the issue, I gave up and formatted the PC…

Now I need to reinstall all applications, etc…

On better news, I’ve just ordered a new video card for my PC (a GTX 970), for my future work on GPU computations, and a new 480 GB SSD for my work stuff… So, hopefully I’ll be able to recover this ghastly delay…

Now listening to “nothing because I still don’t have a music player installed”

Finished the controller (for now)…

As the title indicates, that’s done for now… Just missing the UI components, but I’ll work on those when I have the final art for it…

screen724

Next step is playing the first 15 minutes or so of game with the controller, see how good does it feel, tweaking parameters, etc…

The todo list is getting smaller (removing more stuff than adding nowadays), so progress is coming together, although there’s still a lot of time consuming tasks, like the new UI, story cleanup, bug fixing, all the sound effects and music, etc… And there’s still a bucketload of art missing…

Now listening to “Siren Charms” by “In Flames”

Link of the Day: This is some impressive art… it looks like an action version of “The Banner Saga”, but I’m not complaining!

Target area

Because of the specificities of the controller support, I added two (big) changes in the shooting system… One is that the equipment triggering is done on “button release”, instead of on “button press”…

On “Gateway”, equipment is the teleporter, the grenades, everything that doesn’t actually shoot. Before, as soon as you clicked the right mouse button, it would trigger the equipment. Now, only when you release…

In the meantime, while you keep the button held, it displays the target point…

screen723

For mouse control, this doesn’t do much difference, but my idea is that on the controller, the longer you hold the button, the further away it will trigger the equipment… That will probably help me address the issue with the positional gear types.

Now listening to “Bilateral” by “Leprous”