Good job, but I think scroll game is necesary...
angeldfg
Creator of
Recent community posts
The end :)
Too much work for the end
Progress:
- I added presentation screen
- I added credit screen.
- I added information screen about controls
- I added a small presentation when you've lost or won the game
- I added music and sounds effects
Problems:
- The mobile version, in a telephone stutters and the other also do not see the screen well.
It may be because they are old ...
Poor perfomance. Too many lights, but it´s so pretty :)
- The desktop version works well
The game: http://angeldfg.itch.io/save-the-earth
Enjoy, you only have to kill 10 ufos...:)
A principal screen image....
And a final when you lost (or win)....
Day 9:
That nerves !! Remaining hours to finish ...
Progress:
- After hours, I got to right spheres scales to detect collisions....I do not understand why the Blender displayed FBX files with a certain scale, but to view these files in another program (http://www.open3mod.com/) shows a different scale .... :(
- Added an explosion using the 3D particle engine (using the textures that come with an example https://github.com/libgdx/libgdx/wiki/3D-Particle-... (thanks SeanFelipe).
It remains to be done
- Sound effects
- Main screen
- Details ...
A image with a explosion:
Day 7:
Progress :)
- I remove control up and control down. Too many difficult.
- I paint a background of stars and it scroll when you move spaceship
I found this code (very usefull) :)
public static Texture texture_static_fieldStars;
texture_static_fieldStars = new Texture("fieldstars.jpg");
texture_static_fieldStars.setWrap(Texture.TextureWrap.Repeat, Texture.TextureWrap.Repeat);
private Sprite fieldStars;
fieldStars = new Sprite(texture_static_fieldStars);
private void drawFieldStars(float delta){
sprite.disableBlending();
if (spaceShip.getState()==SpaceShip.Keys.TURN_RIGHT)
scrollTimer.x += 0.05f*Gdx.graphics.getDeltaTime();
if (spaceShip.getState()==SpaceShip.Keys.TURN_LEFT)
scrollTimer.x -= 0.05f*Gdx.graphics.getDeltaTime();
if (spaceShip.getState()==SpaceShip.Keys.UP)
scrollTimer.y -= 0.05f*Gdx.graphics.getDeltaTime();
if (spaceShip.getState()==SpaceShip.Keys.DOWN)
scrollTimer.y += 0.05f*Gdx.graphics.getDeltaTime();
scrollTimer.add(0.00001f,0.00001f);
if(scrollTimer.x>1.0f)
scrollTimer.x = 0.0f;
if(scrollTimer.y>1.0f)
scrollTimer.y = 0.0f;
fieldStars.setU(scrollTimer.x);
fieldStars.setU2(scrollTimer.x+1);
fieldStars.setV(scrollTimer.y);
fieldStars.setV2(scrollTimer.y+1);
fieldStars.draw(sprite);
sprite.enableBlending();
}
- I DRAW A RADAR to show where is Ufos and Earth position.
It was very hard to face the 3D coordinates of the UFOS and Earth to 2D coordinates of the radar.
Basically what I do is to calculate the distance to the 3D Spaceship (displayed in the center of the radar) and applying the rule of three step-radar coordinates.
After I apply the rotation angle of the ship to rotate the elements of the radar when I turn the ship.
Code:
float radar_distance_detect=World3D.SOLARSYSTEM_SIZE;
// DRAW UFOS IN RADAR
for (Ufo ufo : world3d.getUfos()){
temp1.set(ufo.getPosition());
temp2.set(spaceShip.getPosition());
float distance = temp1.dst(temp2);
temp1.sub(temp2); // SUB Ufos position from SpaceShip position
if (distance<radar_distance_detect){
float translateValue = (Radar.size_radar.width/2)/radar_distance_detect;
temp1.set(temp1.x*translateValue,0,-temp1.z*translateValue);
temp1.rotate(spaceShip.getAngle_rot().y,0,1,0);
float pointYradarcentral = camera2D.viewportHeight-(Radar.size_radar.height/2);
float pointXradarcentral = (Radar.size_radar.width/2);
temp1.z = pointYradarcentral - temp1.z;
temp1.x = pointXradarcentral - temp1.x;
sprite.draw(LoadAssets.texture_static_ufo,temp1.x-4,temp1.z-4,10,10);
}
}
I do not know why not come out exactly the right point and I had to subtract 4 to its location on the radar ....
- Ufos creates outside Solar System. Only 5. If you kill them, I create another 5 until 20. If you kill all, YOU WIN.
- You can minimize radar when touch it with mouse.
- I add keyboard control (arrow left-arrow right-arrow up (accelerate)-arrow down (brake) )
Countdown started :)
A image progress:
Day 6:
Progress:
- I added a light to the spaceship motor. It change color.
- I changed Alienship 3D Model: http://www.3dcadbrowser.com/download.aspx?3dmodel=14165
- I added a light to the AlienShip.
- I added a font and now show spaceship velocity.
- I changed World Scale (planet and spaceship). Too many big before :)
- Now, when you move left ou right, the wing of the plane rises.
A image:
Day 5:
It´s 5 o´clock (a.m.)
Going to sleep :)
Progress:
- I added aliens spaceships. Their direction: to Earth :) I need adjust their velocity.
- I got 3d model from here: http://tf3dm.com/download-page.php?url=ufo-19676
A image:
That´s all (for now :) )
PD: I´ll never win a graphics prize :(
Day 4:
Progress:
- Added point light to Sun and looking for Internet I found a entry blog that explain how do more bright the Sun: Not apply environment to the render:
modelBatch.render(instanceSun);
- Added SpaceShip model that it found => http://opengameart.org/content/racing-ship-2d3d but It not render all. Why ????
- The SpaceShip flies, following Model-View-Controller pattern.
- Camera3D follows SpaceShip
That´s all (for now :) )
A image:
Day 3:
After 5 hours I found the reason planets didn´t see correctly.
I was multiplying matrix4 with scl operation and not with scale :(
Now I have planets rotate around Sun (not eliptic orbit, but it´s not important to me).
I obtained textures planets from http://www.solarsystemscope.com/nexus/textures/pla...
Now I have the proyect upload to github: https://github.com/angelfg/SaveTheEarth
DAY 2:
I do structure proyect following Model-View-Controller.
This is first time that I use Blender. Too many options....:(
I export model to fbx format and convert it to g3db format with fbx-conv
I render planets and sun but I have a problem with scale. Not working like I supposed.
I did it with Wings 3D and it worked correctly but with blender render different :(
DAY 1
Well, I start to develop a game in 3D.
Game name: Save the Earth.
Type of game: ·3D. Casual
History: Aliens invades the Earth You must destroy them before they arrive at Earth and kill us.
You must pilot a ship in space and destroy aliens spaceships.
First I generate the game with Libgdx Proyect Generator.