2010-12-16

Another Set of OpenGL for Android tutorials

I found another set of tutorials for android.

They were posted starting back in December of '09 at INsanityDesign.com.

Here's the link.

2010-12-07

Unreal 3 Engine Coming to Android???

Looks like UDK will soon be unleashed in the world of Android:

http://www.talkandroid.com/14541-unreal-engine-3-coming-to-android/

Android and OpenGL ES related links

I've been hacking away at Android SDK. Here are some newb-tastic beginner level tutorials, links and resources that I have been culling over and using lately:

First see my earlier post for some easy tuts on installing Eclipse and the Android "ADK".

Then get your "Hello World" on - using Java inside Eclipse - by using this awesomely easy tutorial... here. That one is just Java, not Android.

Then watch your Android Virtual Device "say Hello", by going here: Android Development 101 - Part 1: Hello World. Yes, this will create a graphical virtual android phone on your screen!

Okay, these two are sequential. Mind you, you MUST have a working installation of the Android SDK in Eclipse working in order to implement these easily. OpenGL ES is quite similar (nearly identical in parts) to OpenGL, so knowledge of OpenGL will be quite helpful as well.

OpenGL ES Tutorial for Android – Part I – Setting up the view

OpenGL ES Tutorial for Android – Part II – Building a polygon

(THANKS! to Per-Erik Bergman at the Jayway Team Blog for the tuts!)

I've also been reading a hard copy of Head First Java, that's correct, I am quite new to Java.

Meanwhile I'm progressing through the Android Development 101 tutorials at Hack A Day. (Mentioned above). Quite nice. These guys really make me feel like a newb, but that's because of the other stuff they are doing. THESE articles on this subject are well written and targeted at the beginner. I've gone through part 3. All tuts work great in my Linux Eclipse Galileo (3.5.1) Android Virtul Device. I keep referring back to these to remind me of simple things like what to type into the fields when I create new Android projects in Eclipse. Newb-ile details like that save a student like me countless hours --> Google rarely turns up details on what everyone "in the know" assumes to be obvious. Know what I mean?

OpenGL ES is included in Android projects through simple import statements and then it looks a lot like OpenGL within the project. For example: GLSurfaceView is included as a class in the Android API. Here is the technical page at Android Developers web site.

-----------------------------------------------------------------

I haven't looked at this one in depth yet, but I'm gonna slap it up here for future perusal. http://www.ibm.com/developerworks/java/tutorials/j-java3d/section3.html
It's concerning simple Java 3D graphics from way back in 2001. Dunno if it's worth anything yet.

2010-09-07

Installing Android SDK (and eclipse)

Found a great blog article about installing the Android Software Development Kit in Ubuntu. Check it out!

http://www.mattcutts.com/blog/install-android-on-ubuntu/

2010-08-23

Entity Objects and Messaging System in C++

Okay, for a school project I am working on just what it says in the header there. Tough stuff for a C++ noob. So far I have just now gotten the sample code ( a free download that comes with the book: Programming Game AI by Example ) to work in Visual Studio 2008.

In order to do this I had to create a brand new empty win32 console project. Then I dragged and dropped all the files I thought necessary into the new folder, added them with the "add existing" command, and then hit F5 (which starts a build along with error messaging). Of course it didn't work the first time so I carefully read the error messages and figured out that I needed to add lots of other "resource folders" (all found in the downloaded examples folder) and then rebuild.

Almost worked. More errors. Then I discovered that I needed to change the path name of "Tiime/Precisiontimer.h" in the include line in precisiontimer.cpp to simply "precisiontimer.h" and walah!!! It finally worked!

Now, time to break down this code and turn it into a messaging system between entities that will cause 3 different AI paths to execute upon message retrieval.

2010-08-17

SVN stuff

http://www.hyperactive3d.com/GwinnettTechAISummer2010/

http://tortoisesvn.tigris.org/

More Bullet Stuff...

http://www.ohloh.net/p/bulletphysics

2010-07-13

an incomplete snippet on Bullet installation alongside OSG



Change lines 22 and 25 in ... Colladautils.cpp and OsgToCollada.cpp to:



Paste path "/home/ultrajones/Programming/bullet-2.75/src/BulletMultiThreaded" in front of all the lines referring to BulletMultiThreaded, starting with line 38 inside sover.cpp in .../osgBullet_00_00_01/examples/solver.cpp.

http://www.archive3d.net/

2010-06-01

More Helpful Blender Links

An interesting post at BlenderArtists.org. I'm taking a look at the .blend file he posted.
http://blenderartists.org/forum/showthread.php?t=184848&highlight=parenting+in+bge+python

Blender's Orientation Matrix. A tutorial from Luma Labs.
http://www.luma.co.za/labs/2006/11/28/blenders-orientation-matrix/

"Royalty free" blender models for game dev:

http://www.blendermodels.org/

Blender Hotkey PDF. This is meant for version 2.36, but remains mostly relevant.
http://download.blender.org/documentation/BlenderHotkeyReference.pdf

A dev named Shatter posted a very basic example of a gravity gun using a ray sensor
On BlenderArtist.org forums a couple years back. I LOVE very basic stuff. It's the easiest way to learn for sure. Just scroll down a bit and look for where he writes:
Here it is!

sorry it took so long, havent been on

Still worked in my 2.49:
http://blenderartists.org/forum/showthread.php?t=124043

2010-05-25

VE-Suite, Bullet physics, Blender tuts, etc...

VE-Suite is built on OpenSceneGraph.
"VE-Suite enables users to simultaneously interact with engineering analyses and graphical models to create a virtual decision-making environment."
http://www.vesuite.org/

Sculptris is an AWESOME new sculpting tool. It's FREE free! Here's the description from the site:

"Sculptris 1.0 has been released!This is a work-in-progress sculpting tool that I've been developing since early December 2009. Its main feature is dynamic mesh tesselation that will provide additional detail where necessary, without the user needing to worry about it."
http://www.drpetter.se/project_sculpt.html

Soft bodies in Blender video tutorial!
http://blender3dvideos.blogspot.com/2010/02/249b-soft-bodies.html

The author of the above video created this site that rounds up all of his published Blender tutorials:
http://www.theadamgaskins.com/Blender/

Lots of new things came out just this week for Blender 2.5 Alpha 2
http://www.blender.org/

Here's a new book about implementing eye-popping effects in Blender.
Blender e-book: The Wow Factor

Great tutorial site for Blender:
http://www.tutorialsforblender3d.com/

Bullet Physics Manual (for implementation in OpenSceneGraph)

UDK (Unreal Development Kit) Tutorials, many from 3D Buzz:
http://udn.epicgames.com/Three/VideoTutorials.html


...and for nostalgia's sake an all time classic video game voice over moment on YouTube:
(You'll want to skip to the last 10 seconds or so most likely...)

Interstate 76 - The Children are Burning!

2010-04-29

OpenSceneGraph Installation in Jaunty Jackalope (brief version)

aOpen synaptic package manager (see the System tab at the top, click it, go to Administration/Synaptic Package Manager). Search for "cmake". Check the box for cmake AND cmake-gui just below. Click "Apply" and install them.

Also in synaptic package manager, search for libtiff4-dev. "Apply" and install that. Close synaptic package manager.

Open a terminal and enter:

apt-get build-dep openscenegraph

Go to these sites and download the source files - OpenSceneGraph-2.8.2.zip.
AND OpenSceneGraph-Data-2.8.0.zip
http://www.openscenegraph.org/projects/osg/wiki/Downloads
http://www.openscenegraph.org/projects/osg/wiki/Downloads/SampleDatasets

Unzip each of them into their own separate folders inside the /home/ultramanjones folder (insert your user name unless you are ultramanjones!)

(I renamed the OpenSceneGraph-2.8.2 to simply OpenSceneGraph, just to make things simpler)

In the terminal change directory to OpenSceneGraph
cd OpenSceneGraph
and then enter the following commands:
./configure
make
sudo make install
sudo ldconfig
Expect about 30 minutes to go by after typing make.

Open the CMake GUI. Go to Applications/Programming/CMake. Click Browse Source and open the OpenSceneGraph folder. Copy and paste the full path of the folder into the "where to build the binaries" field. Make sure the following are all checked:
BUILD_DOCUMENTATION
BUILD_OSG_APPLICATIONS
BUILD_OSG_EXAMPLES
BUILD_OSG_PACKAGES
BUILD_OSG_WRAPPERS

OSG_MAINTAINER
OSG_GLU_TESS_CALLBACK_TRIPLEDOT

Click the configure button. (this part is incomplete) There will be lots of red stuff to fix. This part is more complicated. You'll need to go into the synaptic package manager and install all the necessary files, dev files etc. for SDL and WxWidgets. Check if all the right stuff is installed by clicking configure again. The more correct things you add the less red lines there will be when you click configure. When all of the red is gone click the "generate" button.

Go back to the terminal and type "make" inside the OpenSceneGraph folder.

(OPTIONAL technique using ccmake without CMake GUI:
ccmake .
make
sudo make install

sudo ldconfig

The ccmake . command will open up an interface with bright yellow hilights. You can navigate through it using the arrow keys and the "page up"/"page down" keys. Make sure that application and examples are set to "on".

Type "c" on your keyboard to configure. You may want to hit it twice, just for good measure. Then type "g" to ready the build and exit. Move on to the next command above. Expect about 15 minutes to go by after typing make.)

Go to the /etc folder. Just click on Places, Computer and then filesystem to find it. Find a file named ld.so.conf and add this line to it:

/usr/local/lib
This will let OSG know where the libraries reside.

Then go back to the terminal and enter the following:
export PATH={$PATH}:/usr/local/share/OpenSceneGraph/bin

export OSG_FILE_PATH=/home/myaccount/MyData/OpenSceneGraph-Data

osgviewer cow.osg

You now should be looking at a shiny metallic cow! Move her around with the mouse. Woo hoo! You did it!



If it's still not working. Find this file CmakeCache.txt inside the OpenSceneGraph folder and find this line: BUILD_OSG_EXAMPLES:BOOL=ON. If it reads "OFF" instead of "ON" then change it and save the file.

For further reference see the links in the post just before this one.
Now direct your browser to http://www.openscenegraph.org/projects/osg/wiki/Support/Tutorials download the tutorials there and get your learn on.

NOTE: you will need to change a line or to in the makefiles that are included with the source code that is included with the tutorials. For instance, in the makefile for the 2nd tutorial line 6:
INCOSG = -I/home/franclin/OpenSceneGraph/include
Change "franclin" to the name of your user folder (ultramanjones for instance).

Also, Nate recommends that you add these three lines to the bottom of the makefile. This will clean up the data after you run the graphics applications:
clean:
rm -f $(EXE) *.o
rm -f *~

Make sure to put a tab before the 2nd and 3rd lines or you'll get a "missing separator" error.

2010-04-10

OpenSceneGraph install instructions for Ubuntu 9.04 Jaunty Jackalope

Note: make sure to update your video card drivers before installing OpenSceneGraph. (my post before this one talks a little about that)

I wrote this blog as I went along, truly keeping a (web) log of my progress. I'm thinking I may write a much shorter summary post later, but maybe not. It's not like its a book or anything.

My instructor posted the following link on his blog. Unfortunately, this didn't seem to be enough to get the job done. At least not with my limited beginner knowledge.

http://nateopengl.blogspot.com/2010/02/easy-open-scene-graph-setup-in-ubuntu.html
So... here are some noob (that's me!) clarifications:

First I opened a terminal and entered this command:

apt-get build-dep openscenegraph

This will install all of the build dependencies needed to run OpenSceneGraph.
I went to this site to download the OpenSceneGraph source files:

http://www.openscenegraph.org/projects/osg/wiki/Downloads

I scrolled down a bit and chose this one OpenSceneGraph-2.8.2.zip .

I unzipped it inside of my /home/ultramanjones folder. I then renamed it simply OpenSceneGraph to keep things simple. ultramanjones is my user name.

Also on the OpenSceneGraph site, I found a copy of OpenSceneGraph-Data-2.8.0. Couldn't seem to find a 2.8.2 version. No worries, it will work. I downloaded that and unzipped into /home/ultramanjones right along side of the OpenSceneGraph folder.

I wasn't quite sure what he was referring to when he wrote:

Then I just downloaded the source code for Open Scene Graph 2.8.2 and compiled it as normal with the ./configure ; make; sudo make install

Then I went back and did the CMake turned on demos and apps and did the make; sudo make install


So I looked in the OpenSceneGraph folder and found a readme.txt. That helped make things a little clearer:

cd OpenSceneGraph
./configure
make
sudo make install

I just needed to get in the terminal and Change Directory to the OpenSceneGraph folder. and then, one at a time, enter the next three commands listed above.

"./configure" will only take a minute to execute. "make" will take a good half hour or so. "sudo make install" will flash by in a couple seconds.

Then he writes this:

Then I went back and did the CMake turned on demos and apps and did the make; sudo make install

Okay... um what? Never heard of CMake. So I googled it. I found this link concerning using CMake with OpenSceneGraph.

http://www.openscenegraph.org/projects/osg/wiki/Build/CMake

(btw I also found out that CMake is already included with Ubuntu 9.04, so no need to install it)

I read it and followed this bit of instruction:
# Assuming we're in the directory where the OSG sources
# are unpacked (usually as the directory "OpenScenGraph")
cd OpenSceneGraph
ccmake .
make
sudo make install
cd ..
After entering "ccmake ." I saw a little window with lots of yellow high-lighting open up - the CMake GUI I presume. I used the arrow keys to select "application" and "examples" and make sure they are set to "on". I used the enter key to change if necessary.

Used the "c" key to configure and then hit "g" to ready the build and exit. I was returned to the command line quickly.

Typed "make" and CMake did its work for the next 15 minutes or so.

Typed "sudo make install" and entered the administrator password when prompted, as usual. Seconds later I was returned to the command prompt.

After this I tried to follow the rest of Nate's instructions from his blog post, the first link at the top of this post, but I could not find an "ld.config.so" file in the /etc system folder. Once again I've hit a wall. I will update when I get this thing complete!!!

...time passes...

Woo hoo!! I finally got it working and saw the glorious cow! I'm still not quite sure what I was doing wrong, but, wouldn't you know it, I found the solution to my problems by returning to the source itself. The OpenSceneGraph site. Go figure. More specifically:

http://www.openscenegraph.org/projects/osg/wiki/Support/GettingStarted

I used the following commands from the "4. Running the example applications" section of the page:

export PATH={$PATH}:/usr/local/share/OpenSceneGraph/bin
export OSG_FILE_PATH=/home/myaccount/MyData/OpenSceneGraph-Data
osgviewer cow.osg
And blammy! I was spinning a shiny metallic cow. I know this is a long post, but I really wanted to make it as accessible to newbies as possible.

NOTE: I never did find that file my instructor was referring to, but I did find one named ld.so.conf and I added the line "/usr/local/lib" to that file. The only other thing in the file is "include /etc/ld.so.conf.d/*.conf" at the top of an otherwise empty file. I didn't think it could hurt anything to add that simple line. AND the good news is that it is working.
Another link that may be of help:

http://osgart.org/wiki/Linux_Setup#2._Open_Scene_Graph_Installation

2010-04-08

getting the OSG installed and built from source on a fresh machine.

This advice is slightly dated, originally intended for 8.10, plus I'm not sure what half of it means, lol. I'm keeping it for reference, mainly because of the part concerning getting the appropriate proprietary driver for the nVidia 8400.

http://forum.openscenegraph.org/viewtopic.php?t=1363

Head to this thread in the OSG Forum and scroll down a few posts for what the poster describes this way:

"Below is the an extract of a script file that I use as a template for
getting the OSG installed and built from source on a fresh machine.
It's written long winded to enable me to add the commentary about what
is being installed to do what. You can put all the packages on to a
single apt-get line. The only line you might need to vary is nvidia
packages - as these only apply to Nvidia cards with the proprietary
drivers. "

Thanks to
Robert Osfield, OSG Forum member, for his helpful post.


This line I could not use:
sudo apt-get install nvidia-glx-177-dev libglu-dev

I instead did a google search and found that nvidia-glx-180 was appropriate for the nVidia geforce 8400 series cards, and I used the Synaptic Package Manager to perform that installation. (A simple search for glx nVidia inside of Synaptic)

This line and some others I will have to look into in the future, when I get deeper into developing with OSG:

# image libs
sudo apt-get install libpng-dev libjpeg-dev libtiff-dev

Compiz Fusion Advanced Display System Activation in Ubuntu 9.04 Jaunty Jackalope





If you want to unleash the elegant and powerful Compiz Fusion and take your desktop into the future, not to mention make it look really pretty...

Just check out this link and follow the instructions!

http://www.futuredesktop.org/compiz_desktop_in_ubuntu9.04.html

2010-03-09

Blender Links

I'm attempting a crash course in Blender currently. Teach yourself style. Here are some links I've found useful. But here's a warning, Blender is quite complex in parts and too often the tutorials and/or forum posts leave out the most basic essential information. This leads to endless scrabbling around the inter-web looking for the tiniest dropped morsel of Blender wisdom left over for the beginners and laymen. Speak English brothers! Never understood the need for excessive jargon... especially inside of a tutorial.

UV Texturing Tutorial - No this does NOT have anything to do with ultra-violet light.

Blender Noob to Pro - very basic, but that tends to be the best place to start.

I'll add more later.

2010-01-14

BIG DOG

Breaking my own rules already... this has nothing to do with game dev, well almost nothing. It does involve programming and a little AI after all.

This is a very real robot in development at Boston Dynamics!!!

Check it out.

http://www.bostondynamics.com/robot_bigdog.html