jMP Contributions Update Center

Hey monkeys,



since I at least hope that there will be some user-contributed plugins for jMP :wink: I thought it might be easier to collect them all in one update center so users can install them from one place. Also, external libraries etc. can be wrapped into plugins for easy installation and updating.



So I have created a googlecode project for such plugins which will be automatically compiled, version-labeled and added to the contributions update center like the core jMP plugins. The first plugin I added myself is Collada-Support for jMP via pgi’s great collada importer.



Quick manual for contributors



Currently included plugins:

  • NeoTextureEditor (procedural tiled textures)
  • Lightwave LWO Support (hazmat’s loader)
  • DirectX Support (stanhebben‘s loader)
  • Tree Generator
  • jME Paging System
  • jME2 Model Loader
  • MirrorMonkey



    For people who want to get into jMP development:

    Documentation for jMonkeyPlatform Development



    Cheers,

    Normen
1 Like

Hey,



I was able to extract just the GLSL editor from http://kenai.com/projects/netbeans-opengl-pack and added it to the contrib update center. This means code highlighting, error checking and code completion for glsl frag/vert files in jMP!



Cheers,

Normen

1 Like

it's a nice idea to collect all plugins in a place.

may be there should be also a name list of plugins and what they do, so newbies can follow.

and will there be quick manual for eclipse users ?


xieu90 said:

and will there be quick manual for eclipse users ?

I dont think I will find the time to do the research on how to create NetBeans plugins in Eclipse soon, but in theory it should work by downloading a generic netbeans 6.9 install and importing the libraries etc.. Still, I think doing it in jMP or NetBeans makes way more sense as the support for the management of configuration files, creating new components, actions etc. is of course far better.
Cheers,
Normen
1 Like

Added pgi's blender loader :smiley:

1 Like

Awesome!





By the way, has anyone been able to install the GLSL editor plugin?  It does not seem to like JMP alpha 2 or Netbeans 6.9 either (in 6.8 it works fine). There is something wrong with an Editor Library plugin version.

jiyarza said:

By the way, has anyone been able to install the GLSL editor plugin?  It does not seem to like JMP alpha 2 or Netbeans 6.9 either (in 6.8 it works fine). There is something wrong with an Editor Library plugin version.

The one in the jMonkeyPlatform contributions update center works fine for me.
1 Like
jiyarza said:

By the way, has anyone been able to install the GLSL editor plugin?  It does not seem to like JMP alpha 2 or Netbeans 6.9 either (in 6.8 it works fine). There is something wrong with an Editor Library plugin version.


I had a similar problem, when i installed the alpha 2 the first time.
It was because i had the editor plugin installed on the alpha1.
I resolved the problem by deleting my previous settings (there is a check box in the installation to do it)
Maybe you should give it a try

I have done that and the problem has been solved. Thank you!





In the regular netbeans version happens the same. I upgraded recently from netbeans 6.8 to 6.9 (in this case for work) and there is the same issue with that plugin in 6.9 (in this case the kenai version).

Hey monkeys,

Holger Dammertz, the author of NeoTextureEditor was very cooperative and I managed to make a jMP plugin out of his fantastic tool:







This is not all… Since the tool is also a library to generate textures on the fly I am working on a jME3 material loader that can load the NeoTexture .tgr files directly as a jME3 material, dynamically generating the textures! 8)



Available now through the jMP contributions update center.



Cheers,

Normen

2 Likes

Wow, great news! ^^

This is great, I was actually learning the tool. You just made my day :).

No doubt the most visually appealing feature of jMP yet. This will make for a great “wow! what was that?”-effect in any showcase video :wink:

Great work! That’s really a winning feature as doing these procedures is really a pain in Photoshop!

Added the tgr Material loader 8)



If you update the plugin you will get a new library in jMP. Go to the projects properties and add the “NeoTexture-Libraries” library.



To use it first create a new tgr file and edit it. In the properties field of any image node, enter the name of the texture as it would appear in a j3m file, like “m_ColorMap” for SimpleTextured.j3md. Save the file.



Now open your Main.java file and the Palette (Window->Palette) and you will see two presets in the palette for adding the loader to the assetManager and for loading a material. Drag&Drop them both to the initialize() method of your Application, correct the MaterialDef and tgr file path names to your desire and you’re ready to load your procedural material :smiley:







[java collapse=“true”]

import com.jme3.app.SimpleApplication;

import com.jme3.light.DirectionalLight;

import com.jme3.light.PointLight;

import com.jme3.material.Material;

import com.jme3.material.plugins.NeoTextureMaterialKey;

import com.jme3.math.ColorRGBA;

import com.jme3.math.Vector3f;

import com.jme3.renderer.RenderManager;

import com.jme3.scene.Geometry;

import com.jme3.scene.shape.Sphere;

import com.jme3.util.TangentBinormalGenerator;



/**

  • test
  • @author normenhansen

    */

    public class Main extends SimpleApplication{



    public static void main(String[] args) {

    Main app = new Main();

    app.start();

    }



    @Override

    public void simpleInitApp() {

    Sphere sphMesh = new Sphere(32, 32, 1);

    sphMesh.setTextureMode(Sphere.TextureMode.Projected);

    sphMesh.updateGeometry(32, 32, 1, false, false);

    TangentBinormalGenerator.generate(sphMesh);

    Geometry spat=new Geometry(“boxgeom”,sphMesh);



    assetManager.registerLoader(“com.jme3.material.plugins.NeoTextureMaterialLoader”,“tgr”);

    NeoTextureMaterialKey key = new NeoTextureMaterialKey(“Materials/neoMaterial.tgr”);



    Material mat = assetManager.loadAsset(key);

    mat.setFloat(“m_Shininess”,12);

    spat.setMaterial(mat);

    rootNode.attachChild(spat);



    PointLight pl = new PointLight();

    pl.setColor(ColorRGBA.White);

    pl.setPosition(new Vector3f(0f, 0f, 4f));

    rootNode.addLight(pl);



    DirectionalLight dl = new DirectionalLight();

    dl.setDirection(new Vector3f(1,-1,1).normalizeLocal());

    dl.setColor(new ColorRGBA(0.22f, 0.15f, 0.1f, 1.0f));

    rootNode.addLight(dl);

    }



    @Override

    public void simpleUpdate(float tpf) {

    //TODO: add update code

    }



    @Override

    public void simpleRender(RenderManager rm) {

    //TODO: add render code

    }



    }

    [/java]





    :!: Bitmap textures are not supported yet, only procedural ones!





    There is also a TextureLoader for tgr files but its not fleshed out yet, it should be integrated so that tgr files can be used as texture names in j3m files or something similar.



    Cheers,

    Normen
2 Likes

that’s great Normen!!

Apparently I am missing some dependency (cannot find symbol NeoTextureMaterialKey). Do I have to add the NeoTexture library to the project manually?





Thanks for this fantastic “planet factory” :D.

Yes, right-click the project, select “Properties” then go to the Libraries page and “Add Library” then select NeoTexture-Libraries and add it.

Cheers,

Normen

1 Like

Great, thank you normen.

Added DirectX loader (thanks @stanhebben) and LWO loader (thanks @hazmat) to the contribution repo.

1 Like