GreenForest plugin

I’m finishing my current game, but I’ll I’m doing is working on Blender and no coding is requires. So I’m hungry for coding.

I want to make a forest plugin for JMonkey. Right now I don’t see any plugin available that doesn’t require a degree in rocket-surgery in order to be used. My plugin should be as easy to use as the Skybox plugin (https://wiki.jmonkeyengine.org/legacy/doku.php/jme3:advanced:sky) that jmonkey currently has.

Moreover, I should state that I’m not aiming to make a gui for it. If I do make a gui it would be because it was a stretch goal.

A bit of specifications:

-The plugin will only use etc1 textures for maximun Mobile and Desktop compatibility.

-It will use imposters.

-Since I’ll be using etc1 textures, no transparency will be available. So I intend to make use of shaders on opengl es 2.0 to pick a color (like black or orange) to indicate the places of transparency. I thinks this is possible, but I’m not sure since I’ve never done it before.

-Hopefully it will be wind sensitive and touch sensitive.

Right now I don’t know all the best techniques to make a good forest plugin but I’ll search youtube and the web to see what are the current trends. Hopefully it should be as fancy as the Forests on the Crysis games =D.

3 Likes

would be nice if u really did this :slight_smile: but sometimes it is harder than it looks :slight_smile: still following this thread and waiting for first results

I can see that your aim is android, but what’s the point of limiting to etc1? Why not let the user choose?
Also for the transparency part it defies your “it’s simple to use” goal. There is a transparency modes to make black area transparent, but very often in a folliage texture you will have pretty dark area. So you’ll end up having transparency where it shouldn’t. And the idea to have a “orange” or whatever color for transparency is a lot more complicated and will force users to rework texture so that they fit your plugin.
I think you should use classic alpha for transparency.

What @nehon said:

You already have two choices for transparency that people are accustom to:

  1. An alpha map (white to black… read any channel as the alpha channel value) - These are useful when applying things like texture splatting, etc, etc
  2. The actual alpha channel of the image - Usually does the job just fine! Color is handled as a vec4 in most circumstance. The vec.w or vec.a portion of the vec4 will contain alpha info for the sample.

Deviating from this for no reason would be a mistake.

Sorry, I cannot edit my first post. I’m going to be using jpg and png images (forget about etc1). Also, all I do for Jmonkey I intend to do it for Android and Desktop equally.

@nehon @t0neg0d I don’t have an android aim. Sorry for the misunderstanding.

@Pixelapp said: Sorry, I cannot edit my first post. I'm going to be using jpg and png images (forget about etc1). Also, all I do for Jmonkey I intend to do it for Android and Desktop equally.

@nehon @t0neg0d I don’t have an android aim. Sorry for the misunderstanding.


My point was, why do you want to limit users when there are no limitations…
Using only jpg or png is also a limitation, let uer choose whatever image format they want. ETC1 can be fine if they choose it’s ok for their needs.
Anyway, I don’t want to be discouraging, this sounds pretty neat, just saying that you should not look problems where there isn’t. let users use a JME material and you’ll be fine.

I just found out that @t0neg0d previously developed this “http://hub.jmonkeyengine.org/forum/topic/generic-paging-system-for-jme/”. It was a pleasant surprised. So I don’t think we would need GreenForest plugin anymore.

What @t0neg0d developed was pretty much what I had in mind.

I guess I can say that this project is closed.

1 Like
@Pixelapp said: I just found out that @t0neg0d previously developed this "http://hub.jmonkeyengine.org/forum/topic/generic-paging-system-for-jme/". It was a pleasant surprised. So I don't think we would need GreenForest plugin anymore.

What @t0neg0d developed was pretty much what I had in mind.

I guess I can say that this project is closed.

I never finished this up… there were some issues with the implementation. If you would like, I can dig up the code and pass it your way.

i would like to dig into that code too :slight_smile:

@t0neg0d Please do. Upload it to the jmonkey contributions repository. Make sure you describe well the instructions in order for me to run a simple test case, otherwise it is always hard for me to develop anything with no working example.

Actually, I think it would be better implemented if it used the same method of placing objects as I used for creating static particles in the particle emitter system that I wrote. It would have to be altered to use a noise function or the likes for alwas placing particles in the same place, but otherwise, it would be fairly easy to revisit this.

I’ll start looking through the old implementation and see what I can do about fixing some of the issues I stumbled into earlier. I have a few ideas about how to resolve these now.

2 Likes
@Pixelapp said: @t0neg0d Please do. Upload it to the jmonkey contributions repository. Make sure you describe well the instructions in order for me to run a simple test case, otherwise it is always hard for me to develop anything with no working example.

Ok, I’ll need a bit to get this stuff together. I’ll let you know once I have it.

2 Likes