Question to Camera Frustum and Spatial CullHint

Hi,

i use cam.setFrustumFar(7500f) to cull objects in my scene. I would like one object (Quad Mesh) always draw even distance of quad is greater than 7500. How can i do it. The Quad is setQueueBucket(Bucket.Sky) and setCullHint(CullHint.Never) but camera culling nevertheless.

I think i misunderstand something.

Thanks for help.

Perhaps you need to look at http://wiki.jmonkeyengine.org/doku.php/jme3:advanced:sky for some information on how to add a skybox to your scene.

I dosn´t try create a skybox,
i have a plane (Quad-Mesh) with special texture and shader from ShaderBlow to simulate a atmophase horizont on my asteroid bell. My problem is culling of this plan. I try disable camera culling for this plane.

On this picture can you asteroids, a FogFilter with fog color black and my plane with gray atmosphere texture.
The atmosphere was truncated.

You should still use a skybox for what you are doing, you’ll have way too many objects in your scene if you make every single asteroid an object - which in the end is just two or three pixels on the users monitor. Games are about faking.

As for the issue itself, setFrustumFar works fine, must be something in your code. Maybe even the fog itself.

I need a plane; possible a flat skybox. How can create a flat box?
Currently i use this code to create a flat atmophase:

        Material mat = new Material(this.assetManager, "ShaderBlow/MatDefs/FakeParticleBlow/FakeParticleBlow.j3md");

	Texture maskTex = this.assetManager.loadTexture("Textures/asteroidbell0.png");
	mat.setTexture("MaskMap", maskTex);
	mat.getAdditionalRenderState().setFaceCullMode(FaceCullMode.Off);
	mat.getAdditionalRenderState().setBlendMode(BlendMode.AlphaAdditive);

	ColorRGBA fogColor = ColorRGBA.Gray.clone().mult(0.4f);
	fogColor.a = 4000f;
	mat.setColor("FogColor", fogColor);

	Quad quad = new Quad(radius * 2, radius * 2);
	Geometry geo = new Geometry("AsteroidBellTexture", quad);
	geo.setLocalTranslation(geo.getLocalTranslation().subtract(radius, 0f, radius));
	geo.setMaterial(mat);
	geo.setQueueBucket(Bucket.Sky);
	geo.setCullHint(CullHint.Never);

Better picture to see my problem:

Yes i tried replace far asteroids by sprites but i have problems with contour. Currently i use LOD and culling to reduce object and triangle count.I thought this is best practice. You know more or better trick to fake objects?

Perhaps you need to think the other way around.

Increase your far frustum and manually cull objects that are further away than 7500 using a control perhaps. This way the plane will still be visible really far away but other objects not.

You can have two overlaid viewports, one for nearby objects and another for far away objects, then use a different set of near / far planes for those cameras. The only thing is that you manually have to manage the transition of objects from nearby / far viewport.

Many games use this technique which allows them to have really far away objects - typically space games need this.