Создание светящейся сферы в Java3D - PullRequest
0 голосов
/ 30 марта 2010

Я ищу способ воспроизвести эффект свечения туманной сферы с помощью Java3D.

http://bzflag.org/screenshots/bzfi0021.jpg http://bzflag.org/screenshots/bzfi0019.jpg http://bzflag.org/screenshots/bzfi0022.jpg

Я создаю группу трансформации с точечным источником света и эмиссионно-материальной сферой, но не могу воспроизвести туманность.

Идеи

Спасибо!

============ РЕШЕНИЕ (благодаря Ricket) ===========

    try
    {
        TextureLoader myLoader = new TextureLoader( new File("./data/grad.png").toURI().toURL(), this );

        ImageComponent2D myImage = myLoader.getImage( );

        Raster raster = new Raster( );
        raster.setPosition( new Point3f( 0.0f, 0.0f, 0.0f ) );
        raster.setType( Raster.RASTER_COLOR );
        raster.setSize( 50, 50);
        raster.setImage( myImage );

        TransparencyAttributes ta =  new TransparencyAttributes( TransparencyAttributes.BLENDED, 0.0f );
        Appearance app = new Appearance();
        app.setTransparencyAttributes( ta );

        objScale.addChild( new OrientedShape3D(raster, app, OrientedShape3D.ROTATE_ABOUT_POINT, new Point3f( 0.0f, 0.0f, 0.0f )));


    }
    catch (MalformedURLException e) { throw new RuntimeException(); }

Ответы [ 3 ]

2 голосов
/ 31 марта 2010

Я почти уверен, что «сфера» на самом деле является 2D-спрайтом, нарисованным в 3D-пространстве в виде рекламного щита, а затем соответствующий цветовой свет также «нарисован» на своей позиции. Туманность - это всего лишь двухмерный градиент изображения.

Это только мое лучшее предположение, что я играл в игру, хотя я не смотрел на источник.

1 голос
/ 30 марта 2010

Статья Общие сведения об освещении в Java 3D API объясняет, как настроить параметры освещения. Если вы не можете смоделировать эффект свечения с одной сферой, вы можете попытаться поместить меньшую более яркую в прозрачную сферу.

0 голосов
/ 30 марта 2010

Вы можете попробовать , глядя на код . У них даже есть гид .

...