Book description
Whether you want to design 3D games with Java for love or for money, this is the primer you need to start using the free libraries of jMonkeyEngine 3.0. All hands on, all fun – it makes light work of learning.
- Create 3D games that run on Android devices, Windows, Mac OS, Linux desktop PCs and in web browsers – for commercial, hobbyists, or educational purposes.
- Follow end-to-end examples that teach essential concepts and processes of game development, from the basic layout of a scene to interactive game characters.
- Make your artwork come alive and publish your game to multiple platforms, all from one unified development environment.
In Detail
jMonkeyEngine 3.0 is a powerful set of free Java libraries that allows you to unlock your imagination, create 3D games and stunning graphics. Using jMonkeyEngine’s library of time-tested methods, this book will allow you to unlock its potential and make the creation of beautiful interactive 3D environments a breeze.
"jMonkeyEngine 3.0 Beginner’s Guide" teaches aspiring game developers how to build modern 3D games with Java. This primer on 3D programming is packed with best practices, tips and tricks and loads of example code. Progressing from elementary concepts to advanced effects, budding game developers will have their first game up and running by the end of this book.
From basic concepts and project creation to building a complex 3D Game, you will learn to layout 3D scenes, make them interactive and add various multi-media effects.
You will find answers to common questions including best practices and approaches, how game characters can act and interact, how to simulate solid walls and physical forces, how to take it online to play over a network and much more.
From Zero to Hero, start your journey to make your game idea a reality.
Table of contents
-
jMonkeyEngine 3.0 Beginner's Guide
- Table of Contents
- jMonkeyEngine 3.0 Beginner's Guide
- Credits
- About the Author
- About the Reviewers
- www.PacktPub.com
- Preface
-
1. Installing jMonkeyEngine
- Installation requirements for game developers
- Time for action – installing the jMonkeyEngine SDK
- jMonkeyEngine SDK at your service
- Can I work in other Java IDEs?
- Time for action – running a demo
- Time for action – creating a project
- Assets and the art pipeline
- Time for action – distributing a game
- Can I sell my jMonkeyEngine game?
- Summary
-
2. Creating Your First 3D Scene
- A basic template to initialize scenes
- Time for action – initializing a scene step by step
- Starting and stopping the application
- Time for action – starting the application
- Orient yourself in 3D space
- Time for action – finding the spot
- And how do I say that in Java?
- Time for action – position it!
- Time for action – scale it!
- Time for action – rotate it!
- Time for action – rotate it again, Sam
- Where am I?
- Time for action – navigating the scene
- Populating the scene
- Time for action – node versus geometry
- Extending SimpleApplication
- Make a big scene
- Time for action – configuring display settings
- Keeping an eye on your FPS
- Time for action – checking vital stats
- Navigating the scene with a mouse and a keyboard
- Time for action – move it!
- Summary
-
3. Interacting with the User
- The digital Dungeon Master
- Time for action – from input to output in slow motion
- Time for action – pushing the right buttons
- Time for action – trigger meets mapping
- Time for action – mapping meets listeners
- Time for action – listeners meet actions
- Click me if you can
- Time for action – pick a brick (using crosshairs)
- Time for action – pick a brick (crosshairs with ray casting)
- Time for action – pick a brick (using the mouse pointer)
- Time for action – pick a brick (pointer with ray casting)
- How to steer spatials
- Time for action – you are the CubeChaser
- Time for action – chase all the cubes!
- Time for action – get these cubes under control
- Time for action – get into the right AppState of mind
- Time for action – call me maybe?
- Coordinating global game mechanics
- The beauty of AppStates and controls
- Summary
-
4. Adding Character to Your Game
- Making a Mesh
- Time for action – meshing around with cubes
- Time for action – meshing around with spheres
- From mesh to geometry
- Beg, steal, or borrow
- The right wrench to pound in the screw
- Time for action – installing the Blender-to-Ogre3D plugin
- Time for action – sculpting the mesh
- Time for action – coloring the mesh
- Time for action – a model for to go, please
- Time for action – loading a model (just testing)
- Time for action – loading a model (for real)
- Managing assets – best practices
- Time for action – sorting your stuff out
- Time for action – saving and loading .j3o files
- Animating a model
- Time for action – rig, skin, and animate
- Time for action – loading an animated model
- Time for action – playing an animated model
- Time for action – responding to animation events
- Loading a simple user interface
- Time for action – displaying text
- Time for action – loading AngelCode fonts
- Time for action – loading icons into the GUI
- Time for action – display interactive status icons
- Time for action – 3D objects in the 2D GUI?
- The art pipeline
- Summary
-
5. Creating Materials
- What is a material?
- Time for action – unshaded materials
- Material definitions and shaders
- Good-bye unshaded, hello lighting!
- Time for action – no frills, just color
- Time for action – oooh, shiny!
- Time for action – illuminated opaque textures
- Time for action – semitransparent texture
- Time for action – transparent textures
- Multimapping
- Time for action – meet the hover tank
- Time for action – let the hover tank be groovy
- Time for action – give your hover tank a shine
- Time for action – make your hover tank glow
- Time for action – deep-freeze your materials
- Different types of textures
- Time for action – scaling and tiling textures
- Time for action – lights on!
- Summary
-
6. Having Fun with Physics
- Solid floors and walls
- Time for action – fortify the town
- Time for action – first-person navigation
- Fun with rigid bodies
- Time for action – falling bricks
- Time for action – flying cannon balls
- Time for action – predict the explosion
- Dynamic, static, and kinematic
- Time for action – an elevator platform
- Time for action – react to collisions
- Time for action – timing forces correctly
- My whole world is falling apart
- LEET skillz – learn from the pros
- Summary
-
7. Adding Spark to Your Game
- Particle effects
- Time for action – stir up some dust
- Time for action – sparks
- Time for action – fit to burst?
- Time for action – fire!
- Time for action – design effects in the SDK
- Time for action – finding stuff in the scene graph
- Time for action – welcome to Dark Town
- Time for action – welcome to Dark City
- Time for action – this city needs more gloom
- Time for action – stay focused
- Time for action – this city needs more glow
- Time for action — toons and artistic effects
- Summary
-
8. Creating Landscapes
- Welcome to Earth
- Time for action – climbing a hill
- Time for action – let there be grass
- Time for action – splat goes the texture
- But wait, there's more
- Time for action – up hill and down dale
- Time for action – go fast and vast
- Time for action – plant a tree
- Not even the sky is the limit
- Time for action – nothing but blue sky
- Time for action – sky factory
- Time for action – fog of war
- Catch the sun
- Time for action – let the sun shine in
- Still waters run deep
- Time for action – simple water
- Time for action – take a swim
- Summary
-
9. Making Yourself Heard
- Please roar into the microphone now
- Ambient sounds! They are everywhere!
- Time for action – add ambient sound
- Time for action – to pre-buffer or to stream?
- Time for action – push a button to receive *BAM*
- Basic sound APIs
- Something's coming from behind!
- Time for action – positional audio
- Time for action – I spy with my little ear
- Sound environments
- Time for action – using default sound environments
- Time for action – underwater
- Summary
-
10. Showing Your Game to the World
- Customizing display settings
- Time for action – the name of the game
- Time for action – make a big splash (screen)
- Time for action – window seat or full screen?
- Time for action – fine-tuning video settings
- Time for action – window, canvas, or headless?
- Time for action – reload settings
- SimpleApplication options
- Time for action – time for a pause
- Time for action – hide statistics and FPS
- Save, load, and be merry
- Time for action – save and load game data
- Time for action – save and load display settings
- Pre-release checklist
- Release checklist
- Time for action – build the final release
- Summary
- A. What's Next?
- B. Additional Resources for Fellow jMonkeys
- C. Pop Quiz Answers
- Index
Product information
- Title: jMonkeyEngine 3.0 Beginner's Guide
- Author(s):
- Release date: June 2013
- Publisher(s): Packt Publishing
- ISBN: 9781849516464
You might also like
book
OpenSceneGraph 3.0
This book is a concise introduction to the main features of OpenSceneGraph which then leads you …
book
Core Java® Volume I—Fundamentals, Tenth Edition
Core Java® has long been recognized as the leading, no-nonsense tutorial and reference for experienced programmers …
book
Developing Games in Java™
If you already have Java programming experience and are looking to program games, this book is …
book
Haxe Game Development Essentials
Create games on multiple platforms from a single codebase using Haxe and the HaxeFlixel engine About …