Many 'Graphical' questions

Every developer should write out their plans before they do them. Right? So I have… I have made myself an island (more like continent) w/ many cities on it. Due to that I have some huge questions! :stuck_out_tongue:



QUICK NOTE: ALL OF THIS IS LOW POLY - DO NOT PICTURE OBLIVION WHILE READING THIS - Picture RuneScape type polies. With the exception of a little better.


  1. Could I design my terrain using some other program? Or do I have to use the terrain design in jME? Because if I could use it, 3ds would be huge advantage…


  2. If I can do '1.' read this:

    I DONT WANT the players to walk (or swim) on water. is it possible to make it to where they can walk on 'bridges' over water? Walk on the land while not being accessible to walking on water? If so can I get an explanation?


  3. Lets say I have a city already pre-built. And I want land around it… Would it be smarter to do this:

      A) Continue building around the city

      B) Use another 'file' to build the land around the city

    Assume I have all stuff on the 'continent' built.

      C) Port them into one file?


  4. I've tried to get MonkeyWorld3D to work… But I've had NO LUCK… Could someone give me a walk-through of how to get MW3D 4.0 started? Also… Please note if I need something else to get it to work I probably DONT HAVE IT!.. So yeah I need a dedicated helper :stuck_out_tongue:


  5. Camera - I've been looking through the API and I cannot seem to find out how to make a rotational camera with the up, down, left, and right keys. Any suggestions?

    Thanks


  6. Textures - I noticed that when I brought in a 'teapot' that I had created it was all white, it didn't retain any color I had given it in 3ds. Any reason why…? Any way to give it color? Here is the code I am using to load the object…


import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.net.URL;
import java.util.logging.Level;
import java.util.logging.Logger;

import com.jme.app.AbstractGame;
import com.jme.app.SimpleGame;
import com.jme.bounding.BoundingSphere;
import com.jme.scene.Node;
import com.jme.scene.Spatial;
import com.jme.util.export.binary.BinaryImporter;
import com.jmex.model.converters.FormatConverter;
import com.jmex.model.converters.ObjToJme;

/**
 * Started Date: Jul 22, 2004<br><br>
 *
 * Demonstrates loading formats.
 *
 * @author Jack Lindamood
 */
public class LoadingObj extends SimpleGame {
    private static final Logger logger = Logger
            .getLogger(LoadingObj.class.getName());
   
    public static void main(String[] args) {
       LoadingObj app = new LoadingObj();
        app.setDialogBehaviour(AbstractGame.ALWAYS_SHOW_PROPS_DIALOG);
        // Turn the logger off so we can see the XML later on
        app.start();
    }

    protected void simpleInitGame() {
        // Point to a URL of my model
        URL model=LoadingObj.class.getClassLoader().getResource("jmetest/data/model/teapot.obj");

        // Create something to convert .obj format to .jme
        FormatConverter converter=new ObjToJme();

        // This byte array will hold my .jme file
        ByteArrayOutputStream BO=new ByteArrayOutputStream();
        try {
            // Use the format converter to convert .obj to .jme
            converter.convert(model.openStream(), BO);
            Spatial teapot=(Spatial)BinaryImporter.getInstance().load(new ByteArrayInputStream(BO.toByteArray()));
            // shrink this baby down some
            teapot.setLocalScale(.1f);
            teapot.setModelBound(new BoundingSphere());
            teapot.updateModelBound();
            // Put her on the scene graph
            rootNode.attachChild(teapot);
        } catch (IOException e) {   // Just in case anything happens
            logger.logp(Level.SEVERE, this.getClass().toString(),
                    "simpleInitGame()", "Exception", e);
            System.exit(0);
        }
    }
}



7. Is there a DnD (drag n drop) thing? Uhh... I mean... Is there a way to bring in a model and 'drop it' exactly where I want it? Move it per pixel as some would say? I really need this and if it's in jME do... EXPLAIN! :P

8. All that is stated here is 2D -->  Mini-maps, inventory, stats, MMORPG-like chat-box; Is it possible to add this w/ DnD (drag n drop)? If not could I be pointed to the right direction on giving me an idea how to implement a 2D interface? I also want this interface to contain the 3D world but not overlap the 3D world. I want it to contain it similar to 'runescape'. I already have these created I just need to implement them now.

Thanks

Please don't cross-post.

Poly count has nothing to do with the difficulty of what you are doing.



1.  Yes, you could design your terrain in a seperate program, however it is up to you as to how you are going to get the data in a format that you can easily use to determine where to draw the player etc.



2.  Of course its possible, however again, you will need to determine the best way to make the data (aka where is walkable) available to your game.



3.  I would suggest keeping everything as seperate models so that you can cull non-visible parts of your landscape.



4.  No idea.



5.  Check the code in com.jme.input



6.  I am not sure, but I will assume that the 3ds format loader doesnt import texture data, try obj



7.  No, you would have to code it yourself



8.  See the tutorials on HUDs.



Frankly, I would suggest working on something much simpler.