Example usage for com.badlogic.gdx.graphics.g3d.utils ModelBuilder createSphere

List of usage examples for com.badlogic.gdx.graphics.g3d.utils ModelBuilder createSphere

Introduction

In this page you can find the example usage for com.badlogic.gdx.graphics.g3d.utils ModelBuilder createSphere.

Prototype

public Model createSphere(float width, float height, float depth, int divisionsU, int divisionsV,
        final Material material, final long attributes) 

Source Link

Document

Convenience method to create a model with a single node containing a sphere shape.

Usage

From source file:com.badlogic.gdx.tests.dragome.examples.GearsDemo.java

@Override
public void create() {

    environment = new Environment();
    environment.set(new ColorAttribute(ColorAttribute.AmbientLight, .2f, .2f, .2f, 2f));
    //      environment.add(new DirectionalLight().set(0.8f, 0.8f, 0.8f, 0f, -0.5f, -0.5f));

    sl = new PointLight().setPosition(-5, 10, -6).setColor(1, 1, 1, 1).setIntensity(150);

    //      sl2 = new PointLight().setPosition(0, 7, 5).setColor(0.3f, 0.8f, 0.3f, 1)
    //         .setIntensity(20);
    ///*  w  ww.  j a  v  a2s .  com*/
    //      sl3 = new PointLight().setPosition(0, 9, 6).setColor(0.3f, 0.3f, 0.8f, 1)
    //         .setIntensity(20);

    environment.add(sl);
    //      environment.add(sl2);
    //      environment.add(sl3);

    cam = new PerspectiveCamera(67, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
    cam.position.set(-10, 3, 10f);
    cam.lookAt(-3, 0, 0);
    cam.near = 1f;
    cam.far = 100f;
    cam.update();

    cameraController = new CameraInputController(cam);
    cameraController.autoUpdate = false;
    cameraController.forwardTarget = false;
    cameraController.translateTarget = false;

    Gdx.input.setInputProcessor(new InputMultiplexer(cameraController));

    time = TimeUtils.millis();

    viewport = new ScreenViewport(cam);
    guiViewport = new ScreenViewport();

    DefaultShaderProvider defaultShaderProvider = new DefaultShaderProvider();
    modelBatch = new ModelBatch(defaultShaderProvider);

    ModelBuilder modelBuilder = new ModelBuilder();
    model1 = gear(modelBuilder, 1.0f, 4.0f, 1.0f, 20, 0.7f, Color.RED);
    gear1 = new ModelInstance(model1);

    model2 = gear(modelBuilder, 0.5f, 2.0f, 2.0f, 10, 0.7f, Color.GREEN);
    gear2 = new ModelInstance(model2);

    model3 = gear(modelBuilder, 1.3f, 2.0f, 1.5f, 10, 0.7f, Color.BLUE);
    gear3 = new ModelInstance(model3);

    font = new BitmapFont();

    batch = new SpriteBatch();

    lightModel = modelBuilder.createSphere(1, 1, 1, 10, 10,
            new Material(ColorAttribute.createDiffuse(1, 1, 1, 1)), Usage.Position);
    lightModel.nodes.get(0).parts.get(0).setRenderable(pLight = new Renderable());
}

From source file:com.mbrlabs.mundus.editor.tools.TranslateTool.java

License:Apache License

public TranslateTool(ProjectManager projectManager, GameObjectPicker goPicker, ToolHandlePicker handlePicker,
        ModelBatch batch, CommandHistory history) {

    super(projectManager, goPicker, handlePicker, batch, history);

    ModelBuilder modelBuilder = new ModelBuilder();

    Model xHandleModel = modelBuilder.createArrow(0, 0, 0, 1, 0, 0, ARROW_CAP_SIZE, ARROW_THIKNESS,
            ARROW_DIVISIONS, GL20.GL_TRIANGLES, new Material(ColorAttribute.createDiffuse(COLOR_X)),
            VertexAttributes.Usage.Position);
    Model yHandleModel = modelBuilder.createArrow(0, 0, 0, 0, 1, 0, ARROW_CAP_SIZE, ARROW_THIKNESS,
            ARROW_DIVISIONS, GL20.GL_TRIANGLES, new Material(ColorAttribute.createDiffuse(COLOR_Y)),
            VertexAttributes.Usage.Position);
    Model zHandleModel = modelBuilder.createArrow(0, 0, 0, 0, 0, 1, ARROW_CAP_SIZE, ARROW_THIKNESS,
            ARROW_DIVISIONS, GL20.GL_TRIANGLES, new Material(ColorAttribute.createDiffuse(COLOR_Z)),
            VertexAttributes.Usage.Position);
    Model xzPlaneHandleModel = modelBuilder.createSphere(1, 1, 1, 20, 20,
            new Material(ColorAttribute.createDiffuse(COLOR_XZ)), VertexAttributes.Usage.Position);

    xHandle = new TranslateHandle(X_HANDLE_ID, xHandleModel);
    yHandle = new TranslateHandle(Y_HANDLE_ID, yHandleModel);
    zHandle = new TranslateHandle(Z_HANDLE_ID, zHandleModel);
    xzPlaneHandle = new TranslateHandle(XZ_HANDLE_ID, xzPlaneHandleModel);
    handles = new TranslateHandle[] { xHandle, yHandle, zHandle, xzPlaneHandle };

    gameObjectModifiedEvent = new GameObjectModifiedEvent(null);
}

From source file:com.mbrlabs.mundus.tools.brushes.TerrainBrush.java

License:Apache License

public TerrainBrush(ProjectManager projectManager, Shader shader, ModelBatch batch, CommandHistory history,
        FileHandle pixmapBrush) {//w  w w .  j  av  a2s  .  c  o  m
    super(projectManager, shader, batch, history);

    ModelBuilder modelBuilder = new ModelBuilder();
    sphereModel = modelBuilder.createSphere(1, 1, 1, 30, 30, new Material(), VertexAttributes.Usage.Position);
    sphereModelInstance = new ModelInstance(sphereModel);
    sphereModelInstance.calculateBoundingBox(boundingBox);
    scale(15);

    brushPixmap = new Pixmap(pixmapBrush);
    pixmapCenter = brushPixmap.getWidth() / 2;
}

From source file:com.mbrlabs.mundus.tools.TranslateTool.java

License:Apache License

public TranslateTool(ProjectManager projectManager, GameObjectPicker goPicker, ToolHandlePicker handlePicker,
        Shader shader, ModelBatch batch, CommandHistory history) {

    super(projectManager, goPicker, handlePicker, shader, batch, history);

    ModelBuilder modelBuilder = new ModelBuilder();

    Model xHandleModel = modelBuilder.createArrow(0, 0, 0, 1, 0, 0, ARROW_CAP_SIZE, ARROW_THIKNESS,
            ARROW_DIVISIONS, GL20.GL_TRIANGLES, new Material(ColorAttribute.createDiffuse(COLOR_X)),
            VertexAttributes.Usage.Position);
    Model yHandleModel = modelBuilder.createArrow(0, 0, 0, 0, 1, 0, ARROW_CAP_SIZE, ARROW_THIKNESS,
            ARROW_DIVISIONS, GL20.GL_TRIANGLES, new Material(ColorAttribute.createDiffuse(COLOR_Y)),
            VertexAttributes.Usage.Position);
    Model zHandleModel = modelBuilder.createArrow(0, 0, 0, 0, 0, 1, ARROW_CAP_SIZE, ARROW_THIKNESS,
            ARROW_DIVISIONS, GL20.GL_TRIANGLES, new Material(ColorAttribute.createDiffuse(COLOR_Z)),
            VertexAttributes.Usage.Position);
    Model xzPlaneHandleModel = modelBuilder.createSphere(1, 1, 1, 20, 20,
            new Material(ColorAttribute.createDiffuse(COLOR_XZ)), VertexAttributes.Usage.Position);

    xHandle = new TranslateHandle(X_HANDLE_ID, xHandleModel);
    yHandle = new TranslateHandle(Y_HANDLE_ID, yHandleModel);
    zHandle = new TranslateHandle(Z_HANDLE_ID, zHandleModel);
    xzPlaneHandle = new TranslateHandle(XZ_HANDLE_ID, xzPlaneHandleModel);
    handles = new TranslateHandle[] { xHandle, yHandle, zHandle, xzPlaneHandle };

    gameObjectModifiedEvent = new GameObjectModifiedEvent();
}

From source file:com.thenairn.graphics.renderers.HandRenderer.java

private ModelInstance createBone(Type type, int i) {
    ModelBuilder modelBuilder = new ModelBuilder();
    Material mat = new Material(ColorAttribute.createDiffuse(Color.GREEN));
    Vector size = new Vector(10f, 10f, 10f);
    switch (type) {

    case TYPE_DISTAL:
        mat = new Material(ColorAttribute.createDiffuse(Color.RED));
        break;/*  w  w  w. ja  va2s . c o  m*/
    }
    Model model = modelBuilder.createSphere(size.getX(), size.getY(), size.getZ(), 10, 10, mat,
            VertexAttributes.Usage.Position | VertexAttributes.Usage.Normal);
    models.get(type)[i] = model;
    ModelInstance minstance = new ModelInstance(model);
    bones.get(type)[i] = minstance;
    return minstance;
}