Strict Standards: Non-static method phpbb_feed_factory::init() should not be called statically in /home/smackall/public_html/mobile-game-developer/feed.php on line 66
[phpBB Debug] PHP Warning: in file /feed.php on line 173: Cannot modify header information - headers already sent by (output started at /feed.php:66)
[phpBB Debug] PHP Warning: in file /feed.php on line 174: Cannot modify header information - headers already sent by (output started at /feed.php:66)
Mobile Game Developer Mobile Game Developer 2012-04-14T12:35:02+00:00 2012-04-14T12:35:02+00:00 2012-04-14T12:35:02+00:00 <![CDATA[iPhone OpenGL ES 3D Game Development Forum • Irrlicht - Pick/Get Node from mouse position]]>
When you load a mesh from directx (.x file format) or Collada (.dae file format) file, the bounding box are still the default values. Once you load a mesh from a file, you need to call RecalculateBoundingBox() method.

    scene::IMeshBuffer* heroMeshBuffer = mesh->getMeshBuffer(index);
    scene::SMesh* heroMesh = new SMesh;
    scene::IMeshSceneNode *Nodex = smgr->addMeshSceneNode(heroMesh, 0, index);

Now to get the node from mouse position

            scene::ISceneNode *selectedNode = collMan->getSceneNodeFromScreenCoordinatesBB(MouseState.Position);

Statistics: Posted by DevelopmentTeam — Sat Apr 14, 2012 12:35 pm

2012-03-05T12:21:38+00:00 2012-03-05T12:21:38+00:00 <![CDATA[iPhone OpenGL ES 3D Game Development Forum • iOS Bullet Physics Softbody]]>

Statistics: Posted by DevelopmentTeam — Mon Mar 05, 2012 12:21 pm

2012-02-27T04:53:50+00:00 2012-02-27T04:53:50+00:00 <![CDATA[J2ME Games • Multiplatfomr application]]>
Can anyone help me with a problem. I need to develop an application cross platform that communicate through Bluetooth with other mobile devices. I mean, I need that an Iphone can connect with an Android or Nokia.. I'm not sure how can I do that...

Any idea, will be so usefull.

thanks in Advance.

Oscar Gómez
Engineer at PSL

Statistics: Posted by ogomezg1 — Mon Feb 27, 2012 4:53 am

2012-02-23T08:04:40+00:00 2012-02-23T08:04:40+00:00 <![CDATA[iPhone OpenGL ES 3D Game Development Forum • Re: iPhone Normal Mapping Shaders OpenGL ES 2.0]]>

Statistics: Posted by DevelopmentTeam — Thu Feb 23, 2012 8:04 am

2012-02-16T07:08:37+00:00 2012-02-16T07:08:37+00:00 <![CDATA[iPhone OpenGL ES 3D Game Development Forum • iPhone Normal Mapping Shaders OpenGL ES 2.0]]>

Adding the shader code below.

// Incoming per-vertex attribute values
attribute vec4 vVertex;
attribute vec2 vTexture;
attribute vec3 vNormal;

uniform mat4 mvpMatrix;
uniform mat4 mvMatrix;
uniform mat3 normalMatrix;
uniform vec3 vLightPosition;

// Outgoing normal and light direction to fragment shader
varying vec3 vVaryingNormal;
varying vec3 vVaryingLightDir;
varying vec2 vTexCoords;

void main(void)
    // Get surface normal in eye coordinates and pass them through to the fragment shader
    vVaryingNormal = vNormal;
    // Get vertex position in eye coordinates
    vec4 vPosition4 = mvMatrix * vVertex;
    vec3 vPosition3 = / vPosition4.w;
    // Get vector to light source
    vVaryingLightDir = normalize(vLightPosition - vPosition3);
    // Pass the texture coordinates through the vertex shader so they get smoothly interpolated
    vTexCoords =;
    // Transform the geometry through the modelview-projection matrix
    gl_Position = mvpMatrix * vVertex;

// Uniforms
uniform lowp vec4 ambientColour;
uniform lowp vec4 diffuseColour;
uniform lowp vec4 specularColour;

uniform sampler2D colourMap; // This is the original texture
uniform sampler2D normalMap; // This is the normal-mapped version of our texture

// Input from our vertex shader
varying lowp vec3 vVaryingNormal;
varying lowp vec3 vVaryingLightDir;
varying highp vec2 vTexCoords;

void main(void)
   lowp float maxVariance = 10.0; // Mess around with this value to increase/decrease normal perturbation
   lowp float minVariance = maxVariance / 2.0;
   // Create a normal which is our standard normal + the normal map perturbation (which is going to be either positive or negative)
   lowp vec3 normalAdjusted = vVaryingNormal + normalize(texture2D(normalMap, * maxVariance - minVariance);
   // Calculate diffuse intensity
   lowp float diffuseIntensity = max(0.0, dot(normalize(normalAdjusted), normalize(vVaryingLightDir)));
   // Add the diffuse contribution blended with the standard texture lookup and add in the ambient light on top
   lowp vec3 colour = (diffuseIntensity * diffuseColour.rgb) * texture2D(colourMap, + ambientColour.rgb;
   // Set the almost final output color as a vec4 - only specular to go!
   lowp vec4 vFragColour = vec4(colour, 1.0);
   // Calc and apply specular contribution
   lowp vec3 vReflection        = normalize(reflect(-normalize(normalAdjusted), normalize(vVaryingLightDir)));
   lowp float specularIntensity = max(0.0, dot(normalize(normalAdjusted), vReflection));
   // If the diffuse light intensity is over a given value, then add the specular component
   // Only calc the pow function when the diffuseIntensity is high (adding specular for high diffuse intensities only runs faster)
   // Put this as 0 for accuracy, and something high like 0.98 for speed
   if (diffuseIntensity > 0.98)
      highp float fSpec = pow(specularIntensity, 64.0);
      vFragColour.rgb += vec3(fSpec * specularColour.rgb);
    gl_FragColor = vFragColour;

Statistics: Posted by DevelopmentTeam — Thu Feb 16, 2012 7:08 am

2012-02-07T12:05:24+00:00 2012-02-07T12:05:24+00:00 <![CDATA[iPhone OpenGL ES 3D Game Development Forum • iPhone 3d Bullet Physics Explosion]]>
- (void) Explode:(btVector3)location Power:(float)power Radius:(float)radius {
    for(int i = 0; i < _totalShapes; i++) {
        btVector3 shapeLocation = [_shapes[i] getPosition];
        float distance = btDistance(location, shapeLocation);
        if (distance < radius) {
            btVector3 dir = [_shapes[i] getDirectionFrom:location];
            [_shapes[i] ApplyForce:(dir*(-power/(distance*distance)))];

Statistics: Posted by DevelopmentTeam — Tue Feb 07, 2012 12:05 pm

2011-11-14T09:15:27+00:00 2011-11-14T09:15:27+00:00 <![CDATA[3D Mobile Game (M3G) • Re: How to sort the vertices in real time for a MorphingMesh]]> Statistics: Posted by MobileVisuals — Mon Nov 14, 2011 9:15 am

2011-11-04T19:25:08+00:00 2011-11-04T19:25:08+00:00 <![CDATA[3D Mobile Game (M3G) • How to sort the vertices in real time for a MorphingMesh?]]>
I have arrays with the positions for the shapes that are morphed. I put these in the VertexArray[] morphedPositions. I put this into the VertexBuffer[] morphedVertices. I then put this into a MorphingMesh, like this:

positions-->VertexArray morphedPositions--->VertexBuffer morphedVertices-->MorphingMesh

The problem is that the MorphingMesh seemed to be "locked", I can't access it in real time to sort its positions. Or is there some way to do this in M3G?

Statistics: Posted by MobileVisuals — Fri Nov 04, 2011 7:25 pm

2011-10-07T02:44:11+00:00 2011-10-07T02:44:11+00:00 <![CDATA[iPhone OpenGL ES 3D Game Development Forum • Re: iphone games sound ,music]]> Statistics: Posted by Rosecute — Fri Oct 07, 2011 2:44 am

2011-09-26T10:10:25+00:00 2011-09-26T10:10:25+00:00 <![CDATA[Game Releases • I'm looking for a PS3 game, similiar to the God of War serie]]> My boyfriend was locked away in his room playing these games while I was out of town. I bought a PS3 for Christmas last year and he would like to find a game similar to that series. Would anyone be able to suggest a game with a puzzle/fighting nature to it?

Statistics: Posted by StewartY — Mon Sep 26, 2011 10:10 am