Sanctimonia Updates: July 18th – August 21st

A brief summary of progress since Withstand the Fury’s last update includes (in chronological order):

  • Smooth environmental audio effect amplitude transitions.
  • Implement “arctic” sound effect.
  • Add multiple debugging info HUDs which may be cycled through.
  • Smooth cloud shadow transitions.
  • Implement OpenGL graphics library in tandem with existing graphics libraries.
  • Increase resolution of environmental analysis for environmental audio effects.
  • Create replacement landscape sublayer megatexture for vegetation.
  • Implement camera zoom/scaling.
  • Add snowfall wisps for higher elevations during precipitation.
  • Re-implement primitive graphical water representation in OpenGL.
  • Begin migration of network transaction queues from string arrays to arrays of structures.

I’ve been having some trouble visually representing the elevation of wisps, with raindrops and snowfall being primary examples. I have decided that the eventual solution will be to tilt the perspective of the orthogonal projection matrix so that the “camera” isn’t looking straight down (90 degrees), but rather something like 67.5 degrees. This will allow me to feed a wisp’s (or object’s) actual x, y and z coordinates to OpenGL, which will render them in the correct positions for their elevation.

Regardless, I’m next going to add another level of interactivity to gameplay and implement basic object interaction. The player will be able to pick up an object, walk around with it in hand, and put it down.

I’ve been putting off real networking refinement and server data persistence, so will probably be tackling that once object interaction has been started. The former will allow for network error handling such as the retransmission of “lost” transactions via an outgoing queue and acknowledgement timeouts. The latter will allow the server to make player actions permanent after being verified as valid (landscape excavation being committed to data files, player position being saved to disk after server shutdown, weather state being saved, etc.).

5 Responses

  1. Sanctimonia says:

    Sorry, I forgot the link to the full reports. This update covers weeks 25 – 29, the reports for which may be found here:

    http://www.eightvirtues.com/sanctimonia/progress/

    Pretty boring stuff, I admit, but amongst the chore of progress comes the occasional gem that immediately takes things to a new level. More to follow, as always.

  2. Sanctimonia says:

    Ye thought me joking. Independent left/right hand picking up and putting down of objects with movement and rotation is finished. The controls are tapping L2 or R2 on the gamepad. Holding the L2 or R2 buttons will eventually stow the item in hand into the most appropriate container on your person.

    http://youtu.be/-jNkCmUisgk

    When I can swing a tree I just picked up into someone’s head and knock them down I’ll be happy.

  3. fearyourself says:

    That looks awesome Sanctimonia. By the way, you’re almost there for the view 65 degrees. With a view in OpenGL, you can do a billboard sprite and you’d be done for your avatar.

    Trees and such is the same and would work also well. The advantage of it all will be that if you ever get some 3D elements, you can integrate them for almost free in the game 😉

    Great work, if you could hurdle the object away, tree tossing in your game could become a great contest 🙂

  4. Time Machine Dragon says:

    Looking very good.
    Side note: There’s something about hearing wind and waves in the background that feels very “Ultima”.

  5. Sanctimonia says:

    Thanks all.

    Eventually tapping L1 or R1 will use the object in that hand (swing the tree), and holding L1 or R1 will throw it. I also want to allow people to catch a moving object by using the regular L2/R2 grab buttons. Ideally when it’s done you’d be able to excavate the vegetation down to the soil to make a baseball diamond, make bases out of sea shells or whatever, and play a game. Network lag permitting of course…

    I need to research views and billboarding in OpenGL, as that sounds like a good idea.