• Content count

  • Joined

  • Last visited

Community Reputation

606 Good

About Neometron

  • Rank

Personal Information

  • Location
    Sycamore, IL
  • Interests
  1. If game object is the storage of values then perhaps a simple functions could justify: def MoveGameObject(gameobject, x, y, z):   gameobject.x = x   gameobject.y = y   gameobject.z = z Or if you want to have game object contain the definition for moving: class GameObject:   def Move(self, x, y, z):     self.x = x     self.y = y     self.z = z
  2. Oh I remember the days when I first learned c/c++ over a high school summer break. I also grabbed a book on making video game during that time. I had to learn how to make a c/c++ game using vga's modex. I still have that book on my book shelf, ripped in two down the spine, and I just paged through it after reading the original post. In my opinion; SFML is metaphorically like programming for dos. Make some system calls here and there to setup your graphics, sound, and input and then make some library calls to render some geometry after some processing in your main loop. My two cents here is to say go for it! Since it was mentioned that emu programming is a driving aspiration to learn; I suggest my favorite starter book here, because the author really simplifies the explanation on how to build a computer literally from relays and transistors. I think that would guide you towards understanding how computers truly work.  
  3. From the album WorldCubed

    Getting correct directional lighting on the voxels was a little tricky. As of now, I'm putting rendering my voxel planet on the backburner and moving on to networking aspect of the project. My goal is to have players travel seemlessly between planets.
  4. From the album WorldCubed

    In the vertex shader I am normalizing a cube to a sphere.
  5. From the album WorldCubed

    In the vertex shader I am normalizing a cube to a sphere.
  6. From the album WorldCubed

    In the vertex shader I am normalizing a cube to a sphere.
  7. From the album WorldCubed

    In preperation to make a voxelized world, I wanted to see how fast I can render all the geometry at once.
  8. Thanks again for the help. Here's an image of my results.
  9. From the album WorldCubed

    This is a screen shot of my voxel engine rendering a 512x256x512 data set at full FPS in debug mode. Currently it features: Sparse Voxel Octree (SVO) Direct3D 11 with per-instance rendering and a single texture array. WASD with mouse look movement Current caveat: Goofed on hiding unseen voxels, however it shows the larger voxels due to the SVO.
  10. Thank you Hodgman for your explanation. I'll give this a shot and keep in mind about the limitation.
  11. Hello everyone, It has been some time since I have been on gamedev and programming in D3D. In the last month or so I have been working on a voxel terrain of 512x512x256 placed within a home brewed octree. I'm currently using D3D11 with instancing and batch based on textures. I discovered that I could bind multiple textures into a texture array. I attempted to pass an unsigned int as a texture index value along with my instance data, but I hit a wall trying to receive that uint in the pixel shader as it will not compile. I have read that the pixel shader does not take uint as input. However, the compile error is X3512: sampler array index must be a literal expression. Which I figure that the array index must be known during compile time. Either way, I ask: Is it possible to pass an index to a texture array through instancing? PS code: Texture2D texture_data[2]; SamplerState sample_state; struct PS_INPUT { float4 position : SV_POSITION; float4 normal : NORMAL; float2 uv : TEXCOORD0; uint instance_texture : TEXCOORD1; }; float4 main(PS_INPUT input) : SV_TARGET { float4 light = { 0.707f, -0.707f, 0.0f, 0.0f }; // In World Space //0 = Vector : 1 = Point light = normalize(-light); float4 texture_color = texture_data[input.instance_texture].Sample(sample_state, input.uv); float ambient_scalar = 0.5f; float4 ambient_color = ambient_scalar * texture_color; float light_scalar = dot(light, input.normal); float4 light_color = light_scalar * texture_color; if (light_scalar > 0.0f) return saturate(ambient_color + light_color); else return saturate(ambient_color); }
  12. Hi everyone,   The theme "Death is Useful" has turned out to be harder than we thought and it was a slow start for us.   Although, I have just made my first journal post ever! Come check it out ;)
  13. It's come near the end of day three for the WoA3, and I want to elaborate on what had happened since the start of the competition. Prior to the competition start: Circumstances broke my team up! I originally planned to work with my daughter and nephew, but they had other obligations this summer break. However, I will not be working alone since I have joined forces with Markypooch in team Pink Elephant. In this team I assumed my role as content creator where as Markypooch is the lead programmer. Day 1: We stayed up late Sunday night, drinking mainly, to wait for the competition's theme "Death is Useful." I find this theme interesting because it can be spun in so many different ways. I also found this theme to be difficult because it can be spun in so many ways. We called it a night and figured that we would have a solid idea later in the day. Evening came, and we still did not have a clue. Day 2: We determined that the game had to be simple, one level, no collisions or physics, and can be programmed while off work hours. While Markypooch was working at his day job, I drafted up a game concept in Blender. He liked it, and it is now game on! Day 3: My nephew may still help with sound effects. I tasked him to make about 30 sfx of various things. Here are screenshots of our level I been working on. Note that these are only renditions using Blender's cycles.
  14. Back in 2005 I was gearing up for the 4 elements competition, but ended up in the military. Now, I'm a family man with aspiring children who want to make video games. I would like to join this competition with my kids as:   Team: Digital Owl Members: Neometron (programmer), Javasuave (audio), Shadowmon (artist) Website/Blog/Twitter handle:   I'll set my calendar ;)