Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 29 Apr 2013
Offline Last Active Jan 19 2016 08:37 AM

#5220489 The Atomic Man: Are lockless data structures REALLY worth learning about?

Posted by on 31 March 2015 - 08:51 AM

Thanks for all the feedback and insight so far. It really astounds me how articulate people can get about programming and the merits and demerits of approaches. That in itself is quite inspiring!

#5217649 The programmer's personal journey and changing tastes

Posted by on 19 March 2015 - 09:39 AM

Just wanted to see what other people's experience has been with what I'm about to talk about.


It's safe to assume that most people on this board took an interest in programming when they found out it was a way to make games, or that they liked programming and problem solving and also happened to like games, so they decided to get serious about writing code.


Buy a few books, search the web, maybe sign up for a degree - everyone's journey is a little different.


However, what I found personally was that after the initial discovery phase I became mad about computer science, rather than making things, which was my original target.


Programming languages, algorithms, CPUs, the myriad of different ways to do one thing, Object oriented programming vs functional, toy projects to test different ways of doing things, assembly and computer architecture, Operating systems etc.


It seemed a new universe, one where I just wanted to know more and more about esoteric data structures and classic cs problems, spending time on youtube watching Stanford lecture videos and hunting down corresponding course literature online, almost having a nerdgasm when Coursera and Udacity came onto the scene where I could get tuition in GPGPU programming at no cost. Looking up programmer job interviews online and really getting teeth into coding problems etc.


I had totally lost sight of my original intention. Only in the last couple of years have I regained my "let's make stuff!" mojo, making a few graphics demos and looking for interesting projects to contribute to. Since returning back to England from Japan with games industry experience under my belt and looking for work, I've also been applying for jobs where maybe 4 years ago I would have died to work at - e.g Amazon, Google etc and the amount of interesting problems you'd have to work on daily.


However I've realised today that the "Software engineer/code enthusiast" part of me is pretty dead. I just want to make awesome experiences + toys for people ("experience" as in a self contained game as opposed to a smooth web browsing experience or smooth streaming of video) and today I've been looking over subjects that enthused me a few years ago strike me as pretty "meh" today and wondering about an impending interview I have with a big brand company as a software engineer tomorrow. 

I was just wondering what other people's personal obsessions about things related to what we do have fluctuated over the years - were you an algorithm junkie too? Did you just always concentrate on making things and learning where necessary i.e "I want to make an AI for my game so I best learn about traversing graphs now" rather than "wow, graph theory is so cool let's investigate!" 

Also why do you think this happens? Is there some common psychological fallacy/condition at work here?


#5215474 Texture Mapping problems with Assimp

Posted by on 09 March 2015 - 01:32 PM

Assimp mesh texture coordinates have 3 components and not two. So when you copy the info into a buffer you need to take that into account.

	glBufferData(GL_ARRAY_BUFFER, currentMesh->mNumVertices * 3 * sizeof(GLfloat), currentMesh->mTextureCoords[0], GL_STATIC_DRAW);
	glVertexAttribPointer(2, 3, GL_FLOAT, GL_FALSE, 0, 0);

Or copy it into an intermediate buffer first

//textureVertices is an array of 2 float component uvs  
for (unsigned int vertex = 0; vertex < numVerts; vertex++){
  memcpy(&textureVertices[vertex].uv,   &thisMesh->mTextureCoords[0][vertex],sizeof(float) * 2);
glBufferData(GL_ARRAY_BUFFER,currentMesh->mNumVertices * 2 * sizeof(GLfloat), textureVertices, GL_STATIC_DRAW)

#5192850 rendering to multiple textures - output seems wrong after movement

Posted by on 14 November 2014 - 09:17 AM


As you can see, it's as if the buffer is not being cleared, but glClear() is being called every frame with the mask set to the depth and color bits

Do you clear all render targets ?


The bug seems to be in the way you render your game and not in the shader. Could you show some rendering code too.



Ahhh...the problem was no calling glClear AFTER binding the framebuffer! Thanks

#5144020 Why are my ray traced reflections wrong?

Posted by on 02 April 2014 - 11:20 PM

Ahh, the Normals were in fact fine, but thanks for the suggestion.


The problem I has having and why the formula didn`t work was 1) not normalizing the generated ray Direction and 2) in my sphere intersection code I was simply checking for the lowest value of t, and not checking if they were positive values as well, hence shapes behind the ray`s origin influencing the reflected colour. Now it looks an awful lot better!


Thank you.



#5128291 Why would devs be opposed to the PS4`s x86 architecture?

Posted by on 02 February 2014 - 07:19 PM

This is more of an open - discussion question as opposed to a straight question-and-answer, if this is inappropriate for this forum please tell me.

In the numerous presentations and interviews regarding the genesis of the Playstation 4 Mark Cerny said he faced some resistance regarding making the PS4`s architecture based on the x86. He had to convince a number of people,including third parties, that it was "suitable for games".

PC game developers have had no choice but use x86 architecture for their games for several generations with spectacular results (despite not having the same kind of low level access to a GPU like you do on consoles) so why would people:

a) need persuading


b) what kind of objections would they have?