From d874a0d458e573bb2ad81c58e3a766b11f5239d7 Mon Sep 17 00:00:00 2001 From: "nor..67" Date: Tue, 15 Nov 2011 22:43:10 +0000 Subject: [PATCH] - update SDK help files git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@8688 75d07b2b-3a1a-0410-a2c5-0572b91ccdca --- .../core/docs/jme3/advanced/3d_models.html | 6 +- .../core/docs/jme3/advanced/animation.html | 2 +- .../jme3/advanced/application_states.html | 2 +- .../docs/jme3/advanced/asset_manager.html | 18 +- .../gde/core/docs/jme3/advanced/audio.html | 2 +- .../advanced/audio_environment_presets.html | 2 +- .../docs/jme3/advanced/bloom_and_glow.html | 2 +- .../jme3/advanced/bullet_multithreading.html | 2 +- .../gde/core/docs/jme3/advanced/camera.html | 2 +- .../core/docs/jme3/advanced/cinematics.html | 2 +- .../advanced/collision_and_intersection.html | 2 +- .../core/docs/jme3/advanced/combo_moves.html | 2 +- .../docs/jme3/advanced/custom_controls.html | 33 ++- .../docs/jme3/advanced/custom_meshes.html | 2 +- .../core/docs/jme3/advanced/debugging.html | 61 ++++- .../docs/jme3/advanced/effects_overview.html | 187 ++++++++++------ .../jme3/advanced/endless_terraingrid.html | 2 +- .../docs/jme3/advanced/headless_server.html | 2 +- .../docs/jme3/advanced/hinges_and_joints.html | 2 +- .../jme3/gde/core/docs/jme3/advanced/hud.html | 4 +- .../docs/jme3/advanced/input_handling.html | 4 +- .../jme3/advanced/j3m_material_files.html | 14 +- .../core/docs/jme3/advanced/jme3_shaders.html | 134 ++++++++++- .../docs/jme3/advanced/light_and_shadow.html | 2 +- .../docs/jme3/advanced/loading_screen.html | 2 +- .../core/docs/jme3/advanced/localization.html | 6 +- .../gde/core/docs/jme3/advanced/logging.html | 2 +- .../making_the_camera_follow_a_character.html | 2 +- .../jme3/advanced/material_definitions.html | 4 +- .../jme3/advanced/materials_overview.html | 184 ++++++++++----- .../gde/core/docs/jme3/advanced/mesh.html | 2 +- .../core/docs/jme3/advanced/monkey_zone.html | 18 +- .../core/docs/jme3/advanced/motionpath.html | 2 +- .../docs/jme3/advanced/mouse_picking.html | 2 +- .../jme3/advanced/multiple_camera_views.html | 209 +++++++++++++----- .../docs/jme3/advanced/multithreading.html | 2 +- .../core/docs/jme3/advanced/networking.html | 12 +- .../core/docs/jme3/advanced/nifty_gui.html | 2 +- .../advanced/nifty_gui_java_interaction.html | 4 +- .../jme3/advanced/nifty_gui_java_layout.html | 6 +- .../docs/jme3/advanced/nifty_gui_overlay.html | 2 +- .../jme3/advanced/nifty_gui_projection.html | 2 +- .../jme3/advanced/nifty_gui_xml_layout.html | 9 +- .../docs/jme3/advanced/open_game_finder.html | 2 +- .../docs/jme3/advanced/particle_emitters.html | 9 +- .../gde/core/docs/jme3/advanced/physics.html | 2 +- .../docs/jme3/advanced/physics_listeners.html | 2 +- .../jme3/advanced/post-processor_water.html | 2 +- .../gde/core/docs/jme3/advanced/ragdoll.html | 2 +- .../read_graphic_card_capabilites.html | 2 +- .../remote-controlling_the_camera.html | 2 +- .../docs/jme3/advanced/save_and_load.html | 13 +- .../docs/jme3/advanced/shaderblow_glass.jpg | Bin 0 -> 2437 bytes .../docs/jme3/advanced/shaderblow_light1.jpg | Bin 0 -> 3308 bytes .../docs/jme3/advanced/shaderblow_light2.jpg | Bin 0 -> 1378 bytes .../docs/jme3/advanced/shaderblow_matcap.jpg | Bin 0 -> 3617 bytes .../docs/jme3/advanced/shadow-sponza-ssao.png | Bin 0 -> 21289 bytes .../gde/core/docs/jme3/advanced/shape.html | 10 +- .../jme3/gde/core/docs/jme3/advanced/sky.html | 2 +- .../gde/core/docs/jme3/advanced/spatial.html | 62 ++++-- .../core/docs/jme3/advanced/swing_canvas.html | 2 +- .../gde/core/docs/jme3/advanced/tanlglow1.png | Bin 163501 -> 13531 bytes .../gde/core/docs/jme3/advanced/terrain.html | 180 ++++++++++++--- .../docs/jme3/advanced/terrain_collision.html | 2 +- .../core/docs/jme3/advanced/underwater2.jpg | Bin 0 -> 12512 bytes .../core/docs/jme3/advanced/update_loop.html | 2 +- .../gde/core/docs/jme3/advanced/vehicles.html | 2 +- .../docs/jme3/advanced/walking_character.html | 13 +- .../jme3/advanced/water-reflection-muddy.png | Bin 0 -> 28649 bytes .../gde/core/docs/jme3/advanced/water.html | 2 +- .../com/jme3/gde/core/docs/jme3/android.html | 26 +-- .../docs/jme3/beginner/hello_animation.html | 2 +- .../core/docs/jme3/beginner/hello_asset.html | 16 +- .../core/docs/jme3/beginner/hello_audio.html | 2 +- .../docs/jme3/beginner/hello_collision.html | 2 +- .../docs/jme3/beginner/hello_effects.html | 4 +- .../jme3/beginner/hello_input_system.html | 2 +- .../jme3/beginner/hello_main_event_loop.html | 8 +- .../docs/jme3/beginner/hello_material.html | 8 +- .../core/docs/jme3/beginner/hello_node.html | 55 ++++- .../docs/jme3/beginner/hello_physics.html | 2 +- .../docs/jme3/beginner/hello_picking.html | 2 +- .../beginner/hello_simpleapplication.html | 10 +- .../docs/jme3/beginner/hello_terrain.html | 6 +- .../core/docs/jme3/build_from_sources.html | 2 +- .../build_jme3_sources_with_netbeans.html | 2 +- .../com/jme3/gde/core/docs/jme3/faq.html | 6 +- .../docs/jme3/intermediate/appsettings.html | 32 ++- .../jme3/intermediate/best_practices.html | 152 ++++++++----- .../docs/jme3/intermediate/file_types.html | 49 ++-- .../jme3/intermediate/headlessserver.html | 9 +- .../gde/core/docs/jme3/intermediate/math.html | 8 +- .../docs/jme3/intermediate/optimization.html | 7 +- .../jme3/intermediate/simpleapplication.html | 24 +- .../com/jme3/gde/core/docs/jme3/math.html | 2 +- ...impleapplication_from_the_commandline.html | 4 +- .../jme3/gde/core/docs/jme3/terminology.html | 4 +- .../gde/core/docs/jme3/the_scene_graph.html | 2 +- .../com/jme3/gde/core/docs/jme3/webstart.html | 29 ++- .../core/docs/sdk/application_deployment.html | 22 +- .../jme3/gde/core/docs/sdk/asset_packs.html | 18 +- .../com/jme3/gde/core/docs/sdk/blender.html | 12 +- .../com/jme3/gde/core/docs/sdk/build-impl.png | Bin 0 -> 15312 bytes .../jme3/gde/core/docs/sdk/code_editor.html | 10 +- .../docs/sdk/debugging_profiling_testing.html | 16 +- .../core/docs/sdk/default_build_script.html | 24 +- .../jme3/gde/core/docs/sdk/development.html | 16 +- .../sdk/development/extension_library.html | 12 +- .../core/docs/sdk/development/general.html | 2 +- .../docs/sdk/development/model_loader.html | 2 +- .../docs/sdk/development/projects_assets.html | 2 +- .../gde/core/docs/sdk/development/scene.html | 34 +-- .../docs/sdk/development/sceneexplorer.html | 2 +- .../gde/core/docs/sdk/development/setup.html | 20 +- .../jme3/gde/core/docs/sdk/filterexplorer.png | Bin 56862 -> 47466 bytes .../com/jme3/gde/core/docs/sdk/filters.html | 56 ++++- .../sdk/jmonkeyplatform-sceneexplorer-add.jpg | Bin 23678 -> 97071 bytes .../gde/core/docs/sdk/material-editor.png | Bin 59530 -> 55555 bytes .../gde/core/docs/sdk/material_editing.html | 19 +- .../docs/sdk/model_loader_and_viewer.html | 16 +- .../gde/core/docs/sdk/project_creation.html | 20 +- .../gde/core/docs/sdk/scene_composer.html | 8 +- .../gde/core/docs/sdk/scene_explorer.html | 14 +- .../gde/core/docs/sdk/terrain_editor.html | 74 +++---- .../gde/core/docs/sdk/troubleshooting.html | 7 +- .../jme3/gde/core/docs/sdk/use_own_jme.html | 4 +- .../gde/core/docs/sdk/vehicle_creator.html | 2 +- .../gde/core/docs/sdk/version_control.html | 21 +- 128 files changed, 1464 insertions(+), 722 deletions(-) create mode 100644 sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/shaderblow_glass.jpg create mode 100644 sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/shaderblow_light1.jpg create mode 100644 sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/shaderblow_light2.jpg create mode 100644 sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/shaderblow_matcap.jpg create mode 100644 sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/shadow-sponza-ssao.png create mode 100644 sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/underwater2.jpg create mode 100644 sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/water-reflection-muddy.png create mode 100644 sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/build-impl.png diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/3d_models.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/3d_models.html index 6b02dafa7..7057315e0 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/3d_models.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/3d_models.html @@ -25,7 +25,7 @@ To use 3D models in a jME3 application: "Models/MonkeyHead/MonkeyHead.mesh.xml" ); -
  • (For the release build:) Use the jMonkeyPlatform to convert models to .j3o format. You don't need this step as long you still develop and test the aplication within the jMonkeyPlatform.
    +
  • (For the release build:) Use the jMonkeyEngine SDK to convert models to .j3o format. You don't need this step as long you still develop and test the aplication within the jMonkeyEngine SDK.
  • @@ -77,8 +77,8 @@ To export your models as Ogre XML -You can now use the jMonkeyPlatform to load and view models. You can create scenes from them and write cde that loads them into your application. +You can now use the jMonkeyEngine SDK to load and view models. You can create scenes from them and write cde that loads them into your application.

    -

    view online version

    \ No newline at end of file +

    view online version

    \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/animation.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/animation.html index 9be022861..1928b05cb 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/animation.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/animation.html @@ -373,4 +373,4 @@ You have access to the following objects } -

    view online version

    \ No newline at end of file +

    view online version

    \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/application_states.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/application_states.html index 1543daaac..5b6d37559 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/application_states.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/application_states.html @@ -235,4 +235,4 @@ Don't mess with the AppState from other places, because from other methods

    -

    view online version

    \ No newline at end of file +

    view online version

    \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/asset_manager.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/asset_manager.html index de7fee7e6..8652682ed 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/asset_manager.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/asset_manager.html @@ -36,7 +36,7 @@ Additionally, You can configure the Asset Manager and add any path to its root.

    -By default, jME3 searches for models in a directory named assets. In Java projects created with the jMonkeyPlatform, an assets folder is created by default. Using any other IDE or the command line, you have to create this assets directory as an extra step (see the Codeless Project tip below). +By default, jME3 searches for models in a directory named assets. In Java projects created with the jMonkeyEngine SDK, an assets folder is created by default. Using any other IDE or the command line, you have to create this assets directory as an extra step (see the Codeless Project tip below).

    @@ -139,7 +139,7 @@ rootNode.attachChild(scene); - +

    NullPointerException: Cannot locate resource?

    @@ -160,7 +160,7 @@ java.lang.NullPointerException

    -If you use the default build script created by the jMonkeyPlatform then the original OgreXML files are not included in the executable. A stand-alone executable works with .j3o files only. The default build script makes sure to include .j3o files in the executable. +If you use the default build script created by the jMonkeyEngine SDK then the original OgreXML files are not included in the executable. A stand-alone executable works with .j3o files only. The default build script makes sure to include .j3o files in the executable.

    @@ -168,10 +168,10 @@ If you use the default build script created by the jMonkeyPlatform then

    -Before building the executable, you must use the jMonkeyPlatform's context menu action to convert OgreXML models to .j3o format. +Before building the executable, you must use the jMonkeyEngine SDK's context menu action to convert OgreXML models to .j3o format.

      -
    1. Open the kME3 Project in the jMonkeyplatform.
      +
    2. Open the kME3 Project in the jMonkeyEngine SDK.
    3. Browse the assets directory in the Projects window.
    4. @@ -195,14 +195,14 @@ If you load the scene from a non.j3o ZIP file, expand the SDK for coding, you should create a so-called codeless project in the jMonkeyEngine SDK to maintain assets. This method will not meddle with your sources or custom build scripts. It simply makes it easier for you to browse game assets, and preview, arrange, and especially convert models to binary.

        -
      • You use your favorite IDE to code and use the jMonkeyPlatform only for jME3 assets maintenance.
        +
      • You use your favorite IDE to code and use the jMonkeyEngine SDK only for jME3 assets maintenance.
      • -
      • You can also ask the graphic designers in your team to install the jMonkeyPlatform and give them access to such a codeless project.
        +
      • You can also ask the graphic designers in your team to install the jMonkeyEngine SDK and give them access to such a codeless project.
      -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/audio.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/audio.html index 2e6e17a35..b95dbe6e2 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/audio.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/audio.html @@ -188,4 +188,4 @@ You can find more info about OpenAL and its advanced features here: -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/audio_environment_presets.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/audio_environment_presets.html index 98211bd38..9dece2711 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/audio_environment_presets.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/audio_environment_presets.html @@ -209,4 +209,4 @@ Parkinglot = new Environment ( new float[]{ 20, 8.3f, 1f, -1 Smallwaterroom = new Environment ( new float[]{ 26, 36.2f, 0.700f, -1000, -698, 0, 1.51f, 1.25f, 1.14f, -100, 0.020f, 0f, 0f, 0f, 300, 0.030f, 0f, 0f, 0f, 0.179f, 0.150f, 0.895f, 0.190f, -7f, 5000f, 250f, 0f, 0x0} ) ); -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/bloom_and_glow.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/bloom_and_glow.html index 653211871..927b1897b 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/bloom_and_glow.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/bloom_and_glow.html @@ -281,4 +281,4 @@ If you are using a glow color, set it to black
      material.setColor("GlowColor",ColorRGBA.Black);
      -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/bullet_multithreading.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/bullet_multithreading.html index c44358f00..816718000 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/bullet_multithreading.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/bullet_multithreading.html @@ -44,4 +44,4 @@ The physics update happens in parallel to rendering, after the users changes hav -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/camera.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/camera.html index 122322394..e7f53a25e 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/camera.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/camera.html @@ -170,4 +170,4 @@ ChaseCamera chaseCam = new ChaseCamera(cam, target, inputManager); -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/cinematics.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/cinematics.html index 98e674420..02252cbff 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/cinematics.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/cinematics.html @@ -435,4 +435,4 @@ See also:

      -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/collision_and_intersection.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/collision_and_intersection.html index 442e63ba9..38f8068c7 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/collision_and_intersection.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/collision_and_intersection.html @@ -208,4 +208,4 @@ This shape is usually used to simulate simple non-physcial collisions for charac

      -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/combo_moves.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/combo_moves.html index c8a802cda..068a581d1 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/combo_moves.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/combo_moves.html @@ -266,4 +266,4 @@ Depending on the game genre, the designer can reward the players' intrinsic -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/custom_controls.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/custom_controls.html index b42148caa..bfcf06a74 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/custom_controls.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/custom_controls.html @@ -3,21 +3,33 @@

      -A com.jme3.scene.control.Control is a customizable jME3 interface that allows you to cleanly implement game logic, such as game rules, or artificially intelligent behaviour in NPCs. You use Controls to control the behaviour of types of spatials. To control global game behaviour see Application States – you can use both together. +A com.jme3.scene.control.Control is a customizable jME3 interface that allows you to cleanly steer the behaviour of game entities: Traps, alarms, doors, animal NPCs, self-steering vehicles, artificially intelligent behaviour in NPCs, anything that moves. Several instances of Controls together implement the behaviours of a type of Spatial. To control global game behaviour see Application States – you can also use both together. +

      +
        +
      • +
      • +
      + +

      + To control the behaviour of types of entities:

      1. Create one control for each type of behavior. When you add several controls to one spatial, they will be executed in the order they were added.
        For example, an NPC can be controlled by a PhysicsControl and an AIControl.
      2. -
      3. You define a custom control and implement its behaviour in the Control's update() method.
        +
      4. Define the custom control and implement its behaviour in the Control's update() method:
          -
        • In the control, you can pass arguments and manipulate the spatial in any way: Modify its transformation (move, scale, rotate), play animations, check for enemies around it and react, etc.
          +
        • You can pass arguments into your custom control.
          +
        • +
        • In the control class, the object spatial gives you access to the spatial that the control is attached to.
          +
        • +
        • Modify the spatial's transformation (move, scale, rotate), play animations, check for enemies around it and react, etc.
      5. -
      6. Add the control to a spatial and the Spatial's game state is updated automatically from now on.
        -spatial.addControl(myControl)
        +
      7. Add an instance of the control to a spatial, and the Spatial's game state is updated automatically from now on.
        spatial.addControl(myControl);
        +
      @@ -98,7 +110,7 @@ If you want to create a Control that also extends an existing class, then create @Override public Control cloneForSpatial(Spatial spatial) { ControlledThing control = new ControlledThing(y); - // ... + // ... // set custom properties spatial.setControl(control); return control; } @@ -151,7 +163,7 @@ This class can be found under com.jme3.scene.control.AbstractControl

      -Usage: Your custom subclass must implement the three methods controlUpdate(), controlRender(), and cloneForSpatial() as shown here: +Usage: Your custom subclass implements the three methods controlUpdate(), controlRender(), and cloneForSpatial() as shown here:

      public class MyControl extends AbstractControl implements Savable, Cloneable {
      @@ -165,16 +177,17 @@ Usage: Your custom subclass must implement the three methods controlUpdate
         protected void controlUpdate(float tpf){
           if(spatial != null && thing != null) {
             // Implement your custom control here ...
      +      // Change scene graph etc
           }
         }
         @Override
         protected void controlRender(RenderManager rm, ViewPort vp){
      -     // ... optional
      +     // optional rendering manipulation (advanced)
         }
         @Override
         public Control cloneForSpatial(Spatial spatial){
           final MyControl control = new MyControl(...);
      -    spatial.setControl(control);
      +    control.setSpatial(spatial);
           return control;
         }
         @Override
      @@ -255,4 +268,4 @@ vehicleSpatial.addControl(new ManualVehicleControl());
       c.steerX(steerX);
      -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/custom_meshes.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/custom_meshes.html index f15c41199..f3abd834a 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/custom_meshes.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/custom_meshes.html @@ -267,4 +267,4 @@ In case that your use case requires the backfaces to be visible, you have two op -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/debugging.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/debugging.html index db5880f25..d53273457 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/debugging.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/debugging.html @@ -183,5 +183,64 @@ Then you can add a switch to toggle the model's wireframe on and off, like +

      + +TIP :: To set the line width of wireframe display, use mesh.setLineWidth(lineWidth). Default line width is 1. +

      + + + +

      Example: Toggle Wireframe on the scene

      +
      + +

      + +To display the wireframe of the entire scene instead on one material at a time, first create the following Scene Processor +

      +
      public class WireProcessor implements SceneProcessor {    
      + 
      +    RenderManager renderManager;
      +    Material wireMaterial;
      + 
      +    public WireProcessor(AssetManager assetManager) {
      +        wireMaterial = new Material(assetManager, "/Common/MatDefs/Misc/Unshaded.j3md");
      +        wireMaterial.setColor("Color", ColorRGBA.Blue);
      +        wireMaterial.getAdditionalRenderState().setWireframe(true);
      +    }
      + 
      +    public void initialize(RenderManager rm, ViewPort vp) {
      +        renderManager = rm;
      +    }
      + 
      +    public void reshape(ViewPort vp, int w, int h) {
      +        throw new UnsupportedOperationException("Not supported yet.");
      +    }
      + 
      +    public boolean isInitialized() {
      +        return renderManager != null;
      +    }
      + 
      +    public void preFrame(float tpf) {        
      +    }
      + 
      +    public void postQueue(RenderQueue rq) {
      +        renderManager.setForcedMaterial(wireMaterial);
      +    }
      + 
      +    public void postFrame(FrameBuffer out) {
      +        renderManager.setForcedMaterial(null);
      +    }
      + 
      +    public void cleanup() {
      +        renderManager.setForcedMaterial(null);
      +    }
      + 
      +}
      + +

      +Then attach the scene processor to the GUI Viewport. +

      +
      getViewPort().addProcessor(new WireProcessor());
      +
      -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/effects_overview.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/effects_overview.html index 53beb3fdd..6ae74dccc 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/effects_overview.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/effects_overview.html @@ -4,180 +4,233 @@

      -jME3 supports various post-rendering and particle effects. This list contains screenshots and sample code that demonstrates how to add the effect to a scene. +jME3 supports two types of effects, post-rendering filters and particle emitters. This list contains screenshots and links to sample code that demonstrates how to add the effect to a scene.

      +

      +For example, post-processor filter effects are typically activated after the following pattern: +

      +
      public class MyGame extends SimpleApplication {
      +    private FilterPostProcessor fpp;
      +    private SomeFilter sf;
      + 
      +    public void simpleInitApp() {
      +        ...
      +        fpp = new FilterPostProcessor(assetManager);
      +        sf = new SomeFilter();
      +        fpp.addFilter(sf);
      +        viewPort.addProcessor(fpp);
      +        ...
      +    }
      + -

      2D Filter Effects

      +

      Water

      -
      +

      -

      Screen Space Ambient Occlusion

      -
      + +The jMonkeyEngine features "SeaMonkey" water effect including cool underwater caustics. +

      + +

      +See also the announcement with video. +

        -
      • -
      • -
      • -
      • -
      • +
      • -
      • (article)
        +

      - +

      +
        +
      • +
      • +
      • +
      • +
      -

      Light Scattering

      +

      Environment Effects

      -
        -
      • -
      • -
      -

      Bloom

      +

      Depth of Field Blur

      -

      - + +

      +
        +
      • +
      • +
      -

      Toon Effect

      +

      Fog

        -
      • -
      • -
      • +
      -

      Fade in / Fade out

      +

      Light Scattering

      -

      Depth of Field Blur

      +

      Light and Shadows

      - - +

      -
        -
      • -
      • -
      -

      Fog

      +

      Bloom and Glow

      -

      Lighting and Shadows

      +

      Light

      • +
      • +

      +

      -
        -
      • -
      • -
      • -
      • -
      • = Parallel-Split Shadow Mapping (PSSM)
        -
      • -
      -

      Water

      +

      Shadow

      - + +See also: (article)

      + +
      + +

      Special: Glass, Metal, Dissolve, Toon

      +
      + +

      + + + +

      + +
      + +

      Toon Effect

      +
        -
      • +
      • -
      • +
      -

      Special Effects

      +

      Fade in / Fade out

      -

      Particles: Explosions, Fire

      +

      User Contributed

      + +

      + + +

      + +

      + +

        -
      • – debris, flame, flash, shockwave, smoke, sparks
        +
      • LightBlow Shader
      • -
      • +
      • FakeParticleBlow Shader
        +
      • +
      • ToonBlow Shader
        +
      • +
      • Dissolve Shader
        +
      • +
      • MatCap Shader for glass, gold, metals, toons…
        +
      • +
      • Glass Shader
        +
      • +
      • Force Shield Shader

      - + +Thanks for your awesome contributions! Keep them coming!

      -

      Particles: Smoke

      +

      Particles: Explosions, Fire, Smoke

      + +

      + + +Particle emitter effects can have any texture, e.g. fog, smoke, leaves, meteors, snowflakes, mosquitos, fire, sparks… +

        -
      • +
      • – debris, flame, flash, shockwave, smoke, sparks
        +
      • +
      • -
      • Particles can have any texture, e.g. fog, leaves, meteors, snowflakes, mosquitos
        +

      @@ -195,4 +248,4 @@ See also:
      -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/endless_terraingrid.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/endless_terraingrid.html index b1d13c03f..40d1d2163 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/endless_terraingrid.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/endless_terraingrid.html @@ -111,4 +111,4 @@ Further information about terrain and TerrainQuad can be found in the wiki at: -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/headless_server.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/headless_server.html index ba6e7a596..a1efcce6c 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/headless_server.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/headless_server.html @@ -91,4 +91,4 @@ Okay, so you can now start your game in a headless 'server mode', wher -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/hinges_and_joints.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/hinges_and_joints.html index cff6c257e..e0db1cc0d 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/hinges_and_joints.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/hinges_and_joints.html @@ -226,4 +226,4 @@ When you disable the motor, the chained nodes are exposed to gravity again: -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/hud.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/hud.html index e941ac52f..e0679cfae 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/hud.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/hud.html @@ -186,7 +186,7 @@ The recommended approach to create HUDs is using GUI is that it is well integrated into jME and the jMonkeyPlatform, and that it offers all the features that you expect from a professional modern user interface. +The advantage of Nifty GUI is that it is well integrated into jME and the jMonkeyEngine SDK, and that it offers all the features that you expect from a professional modern user interface.

      @@ -200,4 +200,4 @@ For HUDs, you basically follow the same instructions as for creating a normal -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/input_handling.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/input_handling.html index 03cb3e20a..de2802731 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/input_handling.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/input_handling.html @@ -128,7 +128,7 @@ JoyButtonTrigger(0, JoyInput.AXIS_POV_Y) ?

      -In your IDE, use code completion to quickly look up Trigger literals. In the jMonkeyPlatform for example, press ctrl-space or ctrl-/ after KeyInput.| to choose from the list of all keys. +In your IDE, use code completion to quickly look up Trigger literals. In the jMonkeyEngine SDK for example, press ctrl-space or ctrl-/ after KeyInput.| to choose from the list of all keys.

      @@ -350,4 +350,4 @@ The abstraction of separating triggers and mappings has the advantage that you c -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/j3m_material_files.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/j3m_material_files.html index 57c99cc0b..9ec9bb6ce 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/j3m_material_files.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/j3m_material_files.html @@ -57,7 +57,7 @@ How to this file is structured:

      -Tip: In the jMonkeyPlatform, use File>New File>Material>Empty Material File to create .j3m files. +Tip: In the jMonkeyEngine SDK, use File>New File>Material>Empty Material File to create .j3m files.

      @@ -69,10 +69,10 @@ How to this file is structured: This is how you use the prepared .j3m Material on a Spatial. Since you have saved the .j3m file to your project's Assets directory, the .j3m path is relative to MyGame/src/assets/….

      -
      myGeometry.setMaterial(assetManager.loadAsset("Materials/SimpleBump.j3m"));
      +
      myGeometry.setMaterial(assetManager.loadMaterial("Materials/SimpleBump.j3m"));

      -Tip: In the jMonkeyPlatform, open Windows>Palette and drag the JME Material: Set J3M snippet into your code. +Tip: In the jMonkeyEngine SDK, open Windows>Palette and drag the JME Material: Set J3M snippet into your code.

      @@ -175,7 +175,7 @@ All data types (except Color) are specified in com.jme3.shader.VarType. TextureArray (Currently not supported in J3M) - +

      Flip and Repeat Syntax

      @@ -239,7 +239,7 @@ See the

      (Boolean) Enable point sprite rendering for point meshes - +

      Examples

      @@ -251,7 +251,7 @@ See the

      Spatial signpost = (Spatial) assetManager.loadAsset(
           new OgreMeshKey("Models/Sign Post/Sign Post.mesh.xml", null));
      -signpost.setMaterial( (Material) assetManager.loadAsset(
      +signpost.setMaterial( assetManager.loadMaterial(
           new AssetKey("Models/Sign Post/Sign Post.j3m")));
       TangentBinormalGenerator.generate(signpost);
       rootNode.attachChild(signpost);
      @@ -336,4 +336,4 @@ The PNG file is in the same

      -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/jme3_shaders.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/jme3_shaders.html index 0b2eadc31..1f9ce498b 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/jme3_shaders.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/jme3_shaders.html @@ -200,6 +200,44 @@ The complete list of global uniforms that can be used in JME3 can be found +

      + + + +

      JME3 Lighting Global uniforms

      +
      + +

      +JME3 uses some global uniforms for lighting : +

      +
        +
      • g_LightDirection (vec4) : the direction of the light
        +
          +
        • use for SpotLight : x,y,z contain the world direction vector of the light, the w component contains the spotlight angle cosine
          +
        • +
        +
      • +
      • g_LightColor (vec4) : the color of the light
        +
      • +
      • g_LightPosition : the position of the light
        +
          +
        • use for SpotLight : x,y,z contain the world position of the light, the w component contains 1/lightRange
          +
        • +
        • use for PointLight : x,y,z contain the world position of the light, the w component contains 1/lightRadius
          +
        • +
        • use for DirectionalLight : strangely enough it's used for the direction of the light…this might change though. The fourth component contains -1 and it's used in the lighting shader to know if it's a directionalLight or not.
          +
        • +
        +
      • +
      • g_AmbientLightColor the color of the ambient light.
        +
      • +
      + +

      +these uniforms are passed to the shader without having to declare them in the j3md file, but you have to specify in the technique definition " LightMode MultiPass" see lighting.j3md for more information. +
      + +

      @@ -227,36 +265,114 @@ Note that in the shader the attributes names will be prefixed by a “in”.
      At some point when making your own shader you'll need to pass your own uniforms
      -Any uniform has to be declared in the material definition file in the "MaterialParameters" section.
      +Any uniform has to be declared in the material definition file (.j3md) in the "MaterialParameters" section.

          MaterialParameters {
               Vector4 Color
      +        Texture2D ColorMap
           }

      +You can also pass some define to your vertex/fragment programs to know if an uniform as been declared.
      + +You simply add it in the Defines section of your Technique in the definition file.
      -This material parameter will be sent from the engine to the shader as follow

      -
         material.setColor("Color", new ColorRGBA(1.0f, 0.0f, 0.0f, 1.0f);//red color
      +
          Defines {
      +        COLORMAP: ColorMap
      +    }

      +Those material parameters will be sent from the engine to the shader as follow Note that there is a setXXXX method for any type of uniform you want to pass.
      -To use this uniform in the shader, you need to declare it in the .frag or in the .vert files (depending on where you need it) as follow :

      -
         uniform vec4 m_Color;
      +
         material.setColor("Color", new ColorRGBA(1.0f, 0.0f, 0.0f, 1.0f); //red color
      +   material.setTexture("ColorMap", myTexture); 

      - +To use this uniform in the shader, you need to declare it in the .frag or in the .vert files (depending on where you need it). +You can make use of the defines here and later in the code: Note the "m_" prefix that specifies that the uniform is a material parameter.
      -This uniform will be populated at runtime with the value you sent. +

      +
         uniform vec4 m_Color;
      +   #ifdef COLORMAP
      +     uniform sampler2D m_ColorMap;
      +   #endif
      + +

      +The uniforms will be populated at runtime with the value you sent. +

      + + + +

      Example: Adding Color Keying to the Lighting.j3md Material Definition

      +
      + +

      +Color Keying is useful in games involving many players. It consists of adding some
      + +player-specific color on models textures.
      + +The easiest way of doing this is to use a keyMap which will contain the amount of
      + +color to add in its alpha channel.
      + +Here I will use this color map:
      + +to bend color on this texture:
      + +
      + +We need to pass 2 new parameters to the Lighting.j3md definition, MaterialParameters section : + +

      +
      // Keying Map
      +Texture2D KeyMap
      + 
      +// Key Color 
      +Color KeyColor
      + +

      +Below, add a new Define in the main Technique section: + +

      +
      KEYMAP : KeyMap
      + +

      +In the Lighting.frag file, define the new uniforms: + +

      +
      #ifdef KEYMAP
      +  uniform sampler2D m_KeyMap;
      +  uniform vec4 m_KeyColor;
      +#endif
      + +

      +Further, when obtaining the diffuseColor from the DiffuseMap texture, check +if we need to blend it: + +

      +
          #ifdef KEYMAP
      +      vec4 keyColor = texture2D(m_KeyMap, newTexCoord);
      +      diffuseColor.rgb = (1.0-keyColor.a) * diffuseColor.rgb + keyColor.a * m_KeyColor.rgb;
      +    #endif
      + +

      +This way, a transparent pixel in the KeyMap texture doesn't modify the color.
      + +A black pixel replaces it for the m_KeyColor and values in between are blended.
      + +
      + +A result preview can be seen here:

      @@ -328,7 +444,7 @@ Those attributes are deprecated since GLSL 1.3 (opengl 3), hence JME3 global uni gl_NormalMatrix g_NormalMatrix - +

      Useful links

      @@ -339,4 +455,4 @@ Those attributes are deprecated since GLSL 1.3 (opengl 3), hence JME3 global uni

      -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/light_and_shadow.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/light_and_shadow.html index f46958dcb..0a39ea8eb 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/light_and_shadow.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/light_and_shadow.html @@ -230,4 +230,4 @@ soil.setShadowMode(ShadowMode.Receive); ... -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/loading_screen.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/loading_screen.html index 5136cfab2..1a519b4b3 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/loading_screen.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/loading_screen.html @@ -569,4 +569,4 @@ TO DO

      -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/localization.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/localization.html index 1bea834ae..f1ef4c946 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/localization.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/localization.html @@ -36,7 +36,7 @@ There are tools that assist you with localizing Java Swing GUIs. jME3 applicatio

      -Tip: The jMonkeyPlatform supports opening and editing Bundle.properties files. Also note the Tools > Localization menu. +Tip: The jMonkeyEngine SDK supports opening and editing Bundle.properties files. Also note the Tools > Localization menu.

      @@ -101,7 +101,7 @@ score.display=Spielstand:

      -Tip: In the jMonkeyPlatform, you set this VM Option in the Project properties under Run. Here you can also save individual run configuraions for each language you want to test. +Tip: In the jMonkeyEngine SDK, you set this VM Option in the Project properties under Run. Here you can also save individual run configuraions for each language you want to test.

      @@ -177,4 +177,4 @@ Typical problems include:

      -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/logging.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/logging.html index 71fbcb5ea..05f906200 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/logging.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/logging.html @@ -95,4 +95,4 @@ To reactivate full logging, e.g. for debugging and testing:
      Logger.getLogger(””).setLevel(Level.FINE);
      -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/making_the_camera_follow_a_character.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/making_the_camera_follow_a_character.html index 77d2a1a7d..59d56fce0 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/making_the_camera_follow_a_character.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/making_the_camera_follow_a_character.html @@ -173,4 +173,4 @@ What is the difference of the two code samples above? -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/material_definitions.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/material_definitions.html index 0f7951077..b892c9dcb 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/material_definitions.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/material_definitions.html @@ -105,9 +105,9 @@ geom.setMaterial(mat); rootNode.attachChild(geom);

      -Tip: You can find these and other common code snippets in the jMonkeyPlatform Code Palette. Drag and drop them into your source code. +Tip: You can find these and other common code snippets in the jMonkeyEngine SDK Code Palette. Drag and drop them into your source code.

      -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/materials_overview.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/materials_overview.html index c57bd8d00..ec0bf2f81 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/materials_overview.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/materials_overview.html @@ -3,38 +3,51 @@

      -This table shows you which material definitions jME supplies by default, and how to make the most of your designer's 3D models by using material parameters. -If you are looking for information about how to use these materials in code, look at Material Definitions and j3M Material Files. + +Geometries have Materials (.j3m), Materials are based on material definitions (.j3md). You can write .j3m files in a text editor, or use the jMonkeyEngine SDK to generate them for you.

      -Tip: Looks complicated? Remember two things: The most commonly used material is Lighting.j3md (which supports Phong illumination). The jMonkeyPlatform can create Material files, and it offers a visual editor where you can select and set properties, and preview the outcome. The Palatte contains code snippets that demo how to load materials. +This table shows you the material definitions that jMonkeyEngine supplies by default. You want to make the most of your models by using the right material parameters. The developers should be in contact with the graphic designer regarding which of the available jMonkeyEngine features individual Materials and Textures require. You must have an understanding what texture maps are to be able to use textured materials.

      -

      Table of Material Definitions

      +

      Usage

      -Some parameters are "optional" because they are somewhat advanced. If you don't know what an option means, chances are that you are not using this feature in your textures – and you don't need to specify it. (E.g. YCoCg and LATC are image compression formats; Minnaert and WardIso are shader types.) +There are two types of material definitions below, illuminated and unshaded. Illuminated materials look more naturalistic, unshaded ones look more abstract. +

      + +

      +Most parameters are not mandatory, even if they are not explicitly marked optional. For example, it is okay to specify solely the DiffuseMap and NormalMap when using Lighting.j3md, and leave the rest empty. You are only using a subset of the available features, but that's fully acceptable if it already results in the material you want. You can always add more texture maps later.

      -Also note that many other parameters are optional, even if they are not explicitly marked optional. For example, it's okay to specify solely the DiffuseMap and NormalMap when using Lighting.j3md. You are only using a subset of what is possible, but if that's what you want, you can do that. The developer should be in contact with the designer regarding what jME features individual Materials/Textures require. +

      1) Looks confusing? Start with Unshaded.j3md, and then Lighting.j3md.
      +2) The jMonkeyEngine SDK offers a visual editor where you can set properties and preview the outcome. The SDK Palette contains code snippets to load materials.
      +3) If you don't know what an optional setting means, you're likely not using it. +

      -

      Coloring and Standard Textures

      +

      Standard Coloring and Textures

      + +

      + +Standard materials look slightly abstract because they ignore light sources. They work even if the scene does not include a light source. They are single-colored or textured and have no shadows. + +

      - + - +
      Material Definition Usage Parameter : Type Basic Material Definition Usage Parameter : Type
      Common/MatDefs/Misc/Unshaded.j3md Standard unlit Material. Use this for simple coloring, simple texturing, simple glow, simple transparency.
      +
      Common/MatDefs/Misc/Unshaded.j3md Standard, non-illuminated Materials. Use this for simple coloring, simple texturing, simple glow, simple transparency.
      See also: Hello Material
      ColorMap : Texture
      LightMap : Texture
      Color : Color
      @@ -43,6 +56,17 @@ SeparateTexCoord : Boolean
      GlowMap : Texture
      GlowColor: Color
      + +

      + +Other useful, but less commonly used material definitions: + +

      +
      + + + + + +
      Special Material Definitions Usage Parameter : Type
      Common/MatDefs/Misc/Sky.j3md A solid skyblue, or use with a custom SkyDome texture.
      See also: Sky
      Texture : TextureCubeMap
      @@ -58,6 +82,29 @@ Texture2Scale : Float
      Texture3 : Texture (blue)
      Texture3Scale : Float
      Alpha : Texture
      Common/MatDefs/Terrain/HeightBasedTerrain.j3mdA multi-layered texture for terrains.
      +Specify four textures and a Vector3f describing the region in which each texture should appear:
      +X = start height,
      +Y = end height,
      +Z = texture scale.
      +Texture regions can overlap.
      +For example: Specify a seafloor texture for the lowest areas,
      +a sandy texture for the beaches,
      +a grassy texure for inland areas,
      +and a rocky texture for mountain tops.
      terrainSize : Float
      +region1ColorMap : Texture2D
      +region2ColorMap : Texture2D
      +region3ColorMap : Texture2D
      +region4ColorMap : Texture2D
      +region1 : Vector3
      +region2 : Vector3
      +region3 : Vector3
      +region4 : Vector3
      +Settings for steep areas:
      +slopeColorMap : Texture2D
      +slopeTileFactor : Float
      Common/MatDefs/Misc/Particle.j3md Used with texture masks for particle effects, or for point sprites.
      @@ -70,25 +117,27 @@ Quadratic : Float
      PointSprite : Boolean
      - -

      -
      + +

      +

      Phong Illuminated

      +
      -

      +

      -

      +Illuminated materials require a light source added to at least one of their parent nodes! (e.g. rootNode) Illuminated materials are darker on the sides facing away from light sources. They do not automatically cast drop shadows. They use Phong illumination model (default), or the Ward isotropic gaussian specular shader (WardIso) which looks more plastic like. -

      Light and Shadow

      -
      +

      - + - +
      Material Definition Usage Parameters Illuminated Material Definition Usage Parameters
      Common/MatDefs/Light/Lighting.j3md Standard lit material with Phong Illumination. Use this material together with DiffuseMap, SpecularMap, BumpMap (NormalMaps, ParalaxMap) textures. Supports shininess, transparency, and plain material colors (Diffuse, Ambient, Specular colors).
      +
      Common/MatDefs/Light/Lighting.j3md Standard lit material with Phong Illumination.
      +Use this material together with DiffuseMap, SpecularMap, BumpMap (NormalMaps, ParalaxMap) textures.
      +Supports shininess, transparency, and plain material colors (Diffuse, Ambient, Specular colors).
      See also: Hello Material
      -Note: Lit materials require a light source! Glowing materials require a FilterPostProcessor!
      DiffuseMap : Texture
      + Glowing materials require a FilterPostProcessor!
      DiffuseMap : Texture
      UseAlpha1) : Boolean
      NormalMap : Texture
      LATC2) : Boolean
      @@ -116,15 +165,26 @@ VTangent : Boolean
      Minnaert3) : Boolean
      WardIso4) : Boolean
      +
      + + + - -
      Special Illuminated Material Definitions Usage Parameters
      Common/MatDefs/Terrain/TerrainLighting.j3mdSame kind of splat texture as Terrain.j3md, but with shading.
      -Requires a light source.
      Color Diffuse : Color
      +
      Common/MatDefs/Terrain/TerrainLighting.j3mdSame kind of multi-layered splat texture as Terrain.j3md, but with illumination and shading.
      +Typically used for terrains, but works on any mesh.
      +For every 3 splat textures, you need one alpha map.
      +You can use a total of 11 texture maps in the terrain's splat texture:
      +Note that diffuse and normal maps all count against that.
      +For example, you can use a maximum of 9 diffuse textures, two of which can have normal maps;
      +or, five textures with both diffuse and normal maps.
      Diffuse : Color
      Ambient : Color
      Shininess : Float
      Specular : Color
      SpecularMap : Texture
      WardIso : Boolean
      useTriPlanarMapping : Boolean
      +isTerrainGrid : Boolean
      Texture Splat Maps
      DiffuseMap : Texture
      DiffuseMap_0_scale : Float
      @@ -138,6 +198,7 @@ NormalMap_2 : Texture
      DiffuseMap_3 : Texture
      DiffuseMap_3_scale : Float
      NormalMap_3 : Texture
      +etc, up to 11.
      Alpha Maps
      AlphaMap : Texture
      AlphaMap_1 : Texture
      @@ -147,26 +208,25 @@ GlowMap : Texture
      GlowColor : Color
      Common/MatDefs/Light/Reflection.j3md Reflective glass material with environment map (CubeMap/SphereMap).
      -Requires light source.
      -See also:
      Texture : Texture
      +
      Common/MatDefs/Light/Reflection.j3md Reflective glass material with environment map (CubeMap/SphereMap). See also: Texture : Texture
      SphereMap: Boolean
      - +

      -Shininess Tip: To deactivate Shininess, do not set Shininess to 0, but instead set the Specular color to ColorRGBA.Black. +

      Shininess Tip: To deactivate Shininess, do not set Shininess to 0, but instead set the Specular color to ColorRGBA.Black! +

      -Bumpiness Tip: Before you can use NormalMaps, you must generate normals for the mesh (not the Geometry). +

      Bumpiness Tip: Before you can use NormalMaps, you must generate normals for the mesh (not the Geometry). TangentBinormalGenerator.generate(mesh); +

      -
      TangentBinormalGenerator.generate(mesh);
      -

      Testing and Debugging

      +

      Testing and Debugging

      @@ -176,68 +236,61 @@ SphereMap: Boolean
      Common/MatDefs/Misc/ShowNormals.j3md A color gradient calculated from the model's surface normals. You can use this built-in material to test models that have no material, or as fall-back default material.
      - -

      -
      - -Note: Common/MatDefs/Misc/SimpleTextured.j3md, ColoredTextured.j3md, VertexColor.j3md, Wireframe.j3md have been deprecated. Use equivalent features of Unshaded.j3md instead. - -

      - +

      Transparency

      -Most Material Definitions support an alpha channel for transparency. In an RGBA color, the last float is the alpha channel: 0.0f is transparent, 1.0f is opaque.
      -For example: mat.setColor("Color", new ColorRGBA(1,0,0,0.5f)); is a half-opaque red.
      +Most Material Definitions support an alpha channel for opaqueness and transparency in textures. In an RGBA color, the last float is the alpha channel: 0.0f is transparent and 1.0f is opaque. For example, mat.setColor("Color", new ColorRGBA(1,0,0,0.5f)); is a half-opaque red. +

      +

      Additionally, you must specify a blendmode: +

      - + - + - + - + - + - + - + - + - + - + - +
      OptionUsageOptionUsageExample
      mat.getAdditionalRenderState().setBlendMode(BlendMode.Off);Opaquemat.getAdditionalRenderState().setBlendMode(BlendMode.Off);Opaque
      mat.getAdditionalRenderState().setBlendMode(BlendMode.Alpha);Use this for normal transparency. Interpolates the background pixel with the current by using the current pixel's alpha. E.g. alpha-blended vegetation. mat.getAdditionalRenderState().setBlendMode(BlendMode.Alpha);Use this for normal transparency. Interpolates the background pixel with the current pixel by using the current pixel's alpha.Hair texture, window panes, ice, glass, alpha-blended vegetation textures.
      mat.getAdditionalRenderState().setBlendMode(BlendMode.Additive);Additive alpha blending adds colors in a commutative way, i.e. the result does not depend on the order of transparent layers. Adds the background pixel color with the current pixel color. E.g. particle effects that have black color as background. mat.getAdditionalRenderState().setDepthWrite(false);Use this on materials if you have several transparent objects obscuring one another. Disables writing of the pixel's depth value to the depth buffer.
      mat.getAdditionalRenderState().setBlendMode(BlendMode.AlphaAdditive);Same as "Additive", except first it multiplies the current pixel color by the pixel alpha. E.g. used for particle effects that have alpha as background. mat.getAdditionalRenderState().setAlphaFallOff(0.5f);
      +mat.getAdditionalRenderState().setAlphaTest(true)
      Enables alpha test. Works the same way as "AlphaDiscardThreshold".Generally used for vegetation etc.
      mat.getAdditionalRenderState().setBlendMode(BlendMode.Color);Blends by color. Generally useless.mat.getAdditionalRenderState().setBlendMode(BlendMode.Additive);Additive alpha blending adds colors in a commutative way, i.e. the result does not depend on the order of transparent layers. Adds the scene's background pixel color to the current pixel color. Note that viewed in front of a white scene, these textures become fully transparent. This is useful if you have many transparent textures overlapping.Used for particle effect textures that have a black color background.
      mat.getAdditionalRenderState().setBlendMode(BlendMode.Modulate);Multiplies the background pixel by the current pixel.mat.getAdditionalRenderState().setBlendMode(BlendMode.AlphaAdditive);Same as "Additive", except first it multiplies the current pixel color by the pixel alpha.Used for particle effects that have alpha as background.
      mat.getAdditionalRenderState().setBlendMode(BlendMode.ModulateX2);Same as "Modulate", except the result is doubled.mat.getAdditionalRenderState().setBlendMode(BlendMode.Color);Blends by color.Generally useless.
      mat.getAdditionalRenderState().setBlendMode(BlendMode.PremultAlpha);Pre-multiplied alpha blending. E.g. if the color of the object has already been multiplied by its alpha, this is used instead of "Alpha" blend mode. mat.getAdditionalRenderState().setBlendMode(BlendMode.Modulate);Multiplies the background pixel by the current pixel.
      mat.getAdditionalRenderState().setDepthWrite(false);Use this if you have several transparent objects obscuring one another. Disables writing of the pixel's depth value to the depth buffer. mat.getAdditionalRenderState().setBlendMode(BlendMode.ModulateX2);Same as "Modulate", except the result is doubled.
      mat.getAdditionalRenderState().setAlphaFallOff(0.5f);
      -mat.getAdditionalRenderState().setAlphaTest(true)
      Enables alpha test, generally used for vegetation. Works the same way as "AlphaDiscardThreshold".mat.getAdditionalRenderState().setBlendMode(BlendMode.PremultAlpha);Pre-multiplied alpha blending. E.g. if the color of the object has already been multiplied by its alpha, this is used instead of "Alpha" blend mode.For use with premult alpha textures.
      - +

      -
      Also note the AlphaDiscardThreshold value for materials based on Lighting.j3md. The renderer does not render pixels whose transparancy is below the threshold. -

      @@ -245,17 +298,26 @@ Also note the AlphaDiscardThreshold value for materials based on Lighting.j3md.

      Material Options

      + + + - + + + + + + + + + + - + @@ -264,7 +326,7 @@ mat.getAdditionalRenderState().setFaceCullMode(FaceCullMode.FrontAndBack)mat.getAdditionalRenderState().setPolyOffset();
      Material OptionUsage
      mat.getAdditionalRenderState().setWireframe(true);Switch to showing the (textured) Material in wireframe mode
      mat.getAdditionalRenderState().setFaceCullMode(FaceCullMode.Off);
      -mat.getAdditionalRenderState().setFaceCullMode(FaceCullMode.Front);
      -mat.getAdditionalRenderState().setFaceCullMode(FaceCullMode.Back);
      -mat.getAdditionalRenderState().setFaceCullMode(FaceCullMode.FrontAndBack)
      Activate back- or frontface culling, both (=invisible), or off. Backface culling is activated by default as an optimization.mat.getAdditionalRenderState().setFaceCullMode(FaceCullMode.Back); Activate back-face culling. Mesh faces that are not visible are not rendered, which saves time. Backface culling is activated by default as an optimization.
      mat.getAdditionalRenderState().setFaceCullMode(FaceCullMode.Off); No culling. All meshes are rendered even if they are out of view. Slow.
      mat.getAdditionalRenderState().setFaceCullMode(FaceCullMode.Front); Activate front-face culling. Mesh faces facing the camera are not rendered. Typically not used.
      mat.getAdditionalRenderState().setFaceCullMode(FaceCullMode.FrontAndBack)Activate both back- and frontface culling. Use this as an efficient way to make an object temporarily invisible. All it's other in-game properties, collision shapes, interactions, etc remain active.
      mat.getAdditionalRenderState().setColorWrite(false);Disable writing the color of pixels. Use this together with setDepthWrite(true) to write pixels only to the depth buffer for example. mat.getAdditionalRenderState().setColorWrite(false);Disable writing the color of pixels. Use this together with setDepthWrite(true) to write pixels only to the depth buffer, for example.
      mat.getAdditionalRenderState().setPointSprite(true);Enables point-sprite mode, so meshes with "Mode.Points" will be rendered as textured sprites. Note that gl_PointCoord must be set in the shader. Point sprites are used for hardware accelerated particle effects. Enable polygon offset. Use this when you have meshes that have triangles really close to each over (e.g. ), it will shift the depth values to prevent .
      - +
      1) @@ -276,4 +338,4 @@ Minnaert is a shader type.
      4) WardIso is a shader type.
      -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/mesh.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/mesh.html index a2a5f3ad3..9b2f361e0 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/mesh.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/mesh.html @@ -160,4 +160,4 @@ The VertexBuffer contains a particular type of geometry data used by Meshes. Eve -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/monkey_zone.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/monkey_zone.html index be9ef73a8..8c8cbc02b 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/monkey_zone.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/monkey_zone.html @@ -28,8 +28,8 @@ This open-source demo:

      The game idea is based on “BattleZone” arcade game from the 1980s, a first-person shooter the with real-time strategy elements. -The game was written using the jMonkeyPlatform IDE, and it's based off the BasicGame project template. It took us one week to create a playable pre-alpha, including networking. -The project design follows best practices that make it possible to edit maps, vehicles, etc, in jMonkeyPlatform without having to change the code – This allows 3D graphic designers to contribute models more easily. (If you feel like contributing assets or working on parts of the game code, drop us a note!) +The game was written using the jMonkeyEngine SDK, and it's based off the BasicGame project template. It took us one week to create a playable pre-alpha, including networking. +The project design follows best practices that make it possible to edit maps, vehicles, etc, in jMonkeyEngine SDK without having to change the code – This allows 3D graphic designers to contribute models more easily. (If you feel like contributing assets or working on parts of the game code, drop us a note!)

      @@ -195,11 +195,11 @@ The sync manager basically puts a timestamp on every message sent from the serve -

      Use of jMonkeyPlatform tools

      +

      Use of jMonkeyEngine SDK tools

      -All assets used in the game, like entity models and loaded maps can be preconfigured and edited using jMonkeyPlatform. For example, to add a new vehicle type, a vehicle is created in the jMP vehicle editor and UserData like Speed, HitPoints etc. is applied directly in the editor. When the model is loaded in the game it is automatically configured based on these settings, the same accounts for maps that are loaded, special Nodes that mark e.g. player start locations are recognized automatically etc. +All assets used in the game, like entity models and loaded maps can be preconfigured and edited using the jMonkeyEngine SDK. For example, to add a new vehicle type, a vehicle is created in the jMonkeyEngine SDK vehicle editor and UserData like Speed, HitPoints etc. is applied directly in the editor. When the model is loaded in the game it is automatically configured based on these settings, the same accounts for maps that are loaded, special Nodes that mark e.g. player start locations are recognized automatically etc.

      @@ -209,7 +209,7 @@ All assets used in the game, like entity models and loaded maps can be preconfig

      -Entities that are loaded from disk have certain UserData like HitPoints, Speed etc. that is used to configure the entity at runtime. jMP allows adding and editing this UserData so entity properties are editable visually. +Entities (Nodes and Geometries) that are loaded from disk have certain UserData like HitPoints, Speed etc. that is used to configure the entity at runtime. The jMonkeyEngine SDK allows adding and editing this UserData, so entity properties are editable visually.

      @@ -219,7 +219,7 @@ Entities that are loaded from disk have certain UserData like HitPoints, Speed e

      -VehicleControls, CharacterControls and RigidBodyControls with mesh collision shape for terrain and objects are generated in jMP and saved in the entity j3o file. When an entity is loaded, the type of entity is identified based on the available controls and UserData and it is configured accordingly. +VehicleControls, CharacterControls and RigidBodyControls with mesh collision shape for terrain and objects are generated in the jMonkeyEngine SDK and saved in the entity j3o file. When an entity is loaded, the type of entity is identified based on the available controls and UserData and it is configured accordingly.

      @@ -307,10 +307,10 @@ Programmatic PlayerData:

      Have a look at the code and feel free to ask about it, if you want any new features, you are free to implement them. ;) -MonkeyZone is hosted at GoogleCode, where you can check out the jMonkeyPlatform-ready project via svn: +MonkeyZone is hosted at GoogleCode, where you can check out the jMonkeyEngine SDK-ready project via svn:

        -
      1. jMonkeyPlatform→Team→Subversion→Checkout,
        +
      2. jMonkeyEngine SDK→Team→Subversion→Checkout,
      3. Enter the SVN URL
      4. @@ -328,4 +328,4 @@ MonkeyZone is hosted at GoogleCode, where you can check out the jMonkeyPlatform-
      -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/motionpath.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/motionpath.html index 4c567ca7c..cf014d80e 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/motionpath.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/motionpath.html @@ -117,4 +117,4 @@ In this example, you just print the status at every way point. In a game you cou });
      -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/mouse_picking.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/mouse_picking.html index 196ae0106..819786851 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/mouse_picking.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/mouse_picking.html @@ -146,4 +146,4 @@ The following example rotates Spatials named "Red Box" or "Blue B -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/multiple_camera_views.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/multiple_camera_views.html index 032997d5b..4017eb499 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/multiple_camera_views.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/multiple_camera_views.html @@ -4,7 +4,7 @@

      -You can split the screen and look into the 3D scene from different camera angles at the same time. In this example, we create four views (2x2) with the same aspect ratio as the normal view, but half the size. +You can split the screen and look into the 3D scene from different camera angles at the same time.

      @@ -13,29 +13,99 @@ The packages used in this example are com.jme3.renderer.Camera and -

      Set up the First View

      +

      How to resize and Position ViewPorts

      -We use the preconfigured Camera cam and viewPort from SimpleApplication for the first view. +The default viewPort is as big as the window. If you have several, the must be of different sizes, either overlapping or adjacent to one another. How do you tell jME which of the ViewPorts should appear where on the screen, and how big it should be?

      -
      viewPort.setBackgroundColor(ColorRGBA.Blue);
      -cam.setViewPort(.5f, 1f, 0f, 0.5f); // resize the viewPort
      -cam.setLocation(new Vector3f(3.3212643f, 4.484704f, 4.2812433f));
      -cam.setRotation(new Quaternion (-0.07680723f, 0.92299235f, -0.2564353f, -0.27645364f));

      -Place the main camera in the scene and rotate it in its start position. +Imagine the window as a 1.0f x 1.0f rectangle. The default cam's viewPort is set to + +

      +
      cam.setViewPort(0f, 1f, 0f, 1f);
      + +

      + +This setting makes the ViewPort take up the whole rectangle. +

      + +

      +The four values are read in the following order: +

      +
      cam.setViewPort(x1,x2 , y1,y2);
      +
        +
      • X-axis from left to right
        +
      • +
      • Y-axis upwards from bottom to top
        +
      • +
      + +

      + +Here are a few examples: + +

      +
      cam1.setViewPort( 0.0f , 1.0f   ,   0.0f , 1.0f );
      +cam2.setViewPort( 0.5f , 1.0f   ,   0.0f , 0.5f );
      + +

      +These viewport parameters are, (in this order) the left-right extend, and the bottom-top extend of a views's rectangle on the screen. +

      +
      0.0 , 1.0       1.0 , 1.0
      +       +-----+-----+
      +       |cam1       |
      +       |           |
      +       |     +-----+
      +       |     |     |
      +       |     |cam2 |
      +       +-----+-----+
      +0.0 , 0.0       1.0 , 0.0
      + +

      +Example: Cam2's rectangle is int he bottom right: It extends from mid (x1=0.5f) bottom (y1=0.0f), to right (x2=1.0f) mid (y2=0.5f)

      -We will have a detailed look at how we use setViewPort() to position and resize the default view later. +

      If you scale the views in a way so that the aspect ratio of a ViewPort is different than the window's aspect ratio, then the ViewPort appears distorted. In these cases, you must recreate (not clone) the ViewPort's cam object with the right aspect ratio. For example: Camera cam5 = new Camera(100,100); +

      +

      + +
      + +

      Four-Time Split Screen

      +
      + +

      + +In this example, you create four views (2x2) with the same aspect ratio as the window, but each is only half the width and height.

      -

      Set up Three Additional Views

      +

      Set up the First View

      +
      + +

      + +You use the preconfigured Camera cam and viewPort from SimpleApplication for the first view. It's in the bottom right. + +

      +
      cam.setViewPort(.5f, 1f, 0f, 0.5f); // Resize the viewPort to half its size, bottom right.
      + +

      + +Optionally, place the main camera in the scene and rotate it in its start position. + +

      +
      cam.setLocation(new Vector3f(3.32f, 4.48f, 4.28f));
      +cam.setRotation(new Quaternion (-0.07f, 0.92f, -0.25f, -0.27f));
      + +
      + +

      Set Up Three More Views

      @@ -46,23 +116,24 @@ Here is the outline for how you create the three other cams and viewPorts (

    5. Clone the first cam to reuse its settings
    6. -
    7. Resize and position the cam's viewPort with setViewPort() – details below.
      +
    8. Resize and position the cam's viewPort with setViewPort().
    9. -
    10. Place the cameras in the scene and rotate them.
      +
    11. (Optionally) Move the cameras in the scene and rotate them so they face what you want to see.
    12. -
    13. Create a main view for each camera
      +
    14. Create a ViewPort for each camera
    15. -
    16. Reset the cameras' enabled statuses
      +
    17. Reset the camera's enabled statuses
    18. -
    19. Attach the rootNode to be displayed to this view
      -
        -
      1. It doesn't have to be rootNode, but that is the most common use case
        -
      2. -
      -
    20. -
    21. You can set other optional view properties such as backgroundColor
      +
    22. Attach the Node to be displayed to this ViewPort.
      +The camera doesn't have to look at the rootNode, but that is the most common use case.
    23. + +

      + +Here is the abstract code sample for camera n: + +

      Camera cam_n    = cam.clone();
       cam_n.setViewPort(...); // resize the viewPort
       cam_n.setLocation(new Vector3f(...));
      @@ -73,71 +144,89 @@ view_n.setClearEnabled(true);
       view_n.attachScene(rootNode);
       view_n.setBackgroundColor(ColorRGBA.Black);
      -
      - -

      How to resize and position the ViewPorts

      -
      -

      - -How does jme know which of the four views should appear where on the screen? -

      - -

      -Imagine the view as a 1x1-sized box. By default, the settings is cam.setViewPort(0f, 1f, 0f, 1f);. This means the view takes up the whole box, from 0 to 1 left to right, and from 0 to 1 bottom to top. +To visualize what you do, use the following drawing of the viewport positions:

      +
      0.0 , 1.0       1.0 , 1.0
      +       +-----+-----+
      +       |     |     |
      +       |cam3 |cam4 |
      +       +-----------+
      +       |     |     |
      +       |cam2 |cam1 |
      +       +-----+-----+
      +0.0 , 0.0       1.0 , 0.0

      -In the , note the following four lines: +This are the lines of code that set the four cameras to create a four-times split screen.

      -
      cam.setViewPort(  0.5f, 1.0f, 0.0f, 0.5f);
      +
      cam1.setViewPort( 0.5f , 1.0f  ,  0.0f , 0.5f);
       ...
      -cam_2.setViewPort(0.0f, 0.5f, 0.0f, 0.5f);
      +cam2.setViewPort( 0.0f , 0.5f  ,  0.0f , 0.5f);
       ...
      -cam_3.setViewPort(0.0f, 0.5f, 0.5f, 1.0f);
      +cam3.setViewPort( 0.0f , 0.5f  ,  0.5f , 1.0f);
       ...
      -cam_4.setViewPort(0.5f, 1.0f, 0.5f, 1.0f);
      +cam4.setViewPort( 0.5f , 1.0f , 0.5f , 1.0f);
      -

      -These viewport parameters are, in this order, the left - right - bottom - top extend of a camera's box on the screen. Note that we have set a few values to 0.5f – this is where we resize each view to half its default height and width. -

      -
      0.0 , 1.0       1.0 , 1.0
      -       +----+----+
      -       |    |    |
      -       |cam3|cam4|
      -       +---------+
      -       |    |    |
      -       |cam2|cam |
      -       +----+----+
      -0.0 , 0.0       1.0 , 0.0
      +
      + +

      Picture in Picture

      +

      -Example: Cam3's rect extends from bottom-left (0.0 , 0.5) to top-right (0.5 , 1.0) + +The following code snippet sets up two views, one covers the whole screen, and the second is a small view in the top center.

      -
        -
      • The left corner is at 0, and the right corner is 0.5 on the x axis.
        -
      • -
      • The bottom of the box is at 0.5 and the top at 1.0 on the y axis.
        -
      • -
      +
             +-----+-----+
      +       |   |cam|   |
      +       |   | 2 |   |
      +       +   +---+   +
      +       |           |
      +       |    cam    |
      +       +-----+-----+
      +
      // Setup first full-window view
      +cam.setViewPort(0f, 1f, 0f, 1f);
      +cam.setLocation(new Vector3f(3.32f, 4.48f, 4.28f));
      +cam.setRotation(new Quaternion(-0.07f, 0.92f, -0.25f, -0.27f));
      + 
      +// Setup second, smaller PiP view
      +Camera cam2 = cam.clone();
      +cam2.setViewPort(.4f, .6f, 0.8f, 1f);
      +cam2.setLocation(new Vector3f(-0.10f, 1.57f, 4.81f));
      +cam2.setRotation(new Quaternion(0.00f, 0.99f, -0.04f, 0.02f));
      +ViewPort viewPort2 = renderManager.createMainView("PiP", cam2);
      +viewPort2.setClearFlags(true, true, true);
      +viewPort2.attachScene(rootNode);
      -

      Other Layouts

      +

      Settings

      -This layout shows 2x2 views. For a split screen you may want to lay out two views, one above the other, or one next to the other. +You can customize the camera and the viewPort of each view individually. For example, each view can have a different background color: + +

      +
      viewPort.setBackgroundColor(ColorRGBA.Blue);
      + +

      + +You have full control to determine which Nodes the camera can see! It can see the full rootNode… +

      +
      viewPort1.attachScene(rootNode);

      -If you scale the views in a way so that the aspect ratio changes, the views will obviously be distorted. In these cases, create custom camera objects with the right aspect ratio (redefine the default cam). + +… or you can give each camera a special node whose content it can see: +

      +
      viewPort2.attachScene(spookyGhostDetectorNode);
      -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/multithreading.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/multithreading.html index 742690823..a319eca48 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/multithreading.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/multithreading.html @@ -212,4 +212,4 @@ The cool thing about this appraoch is that every entity creates one self-contain -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/networking.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/networking.html index a5a93da2a..cae36cdb6 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/networking.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/networking.html @@ -434,6 +434,16 @@ You cannot modify the scenegraph in the NetworkThread. You have to create a Call Learn more about multithreading here.

      + + + +

      Troubleshooting

      +
      + +

      + +If you have set up a server in your home network, and the game clients cannot reach it from the outside, it's time to learn about . +

      documentation, network, @@ -441,4 +451,4 @@ Learn more about view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui.html index 98048262d..40a9d033d 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui.html @@ -261,4 +261,4 @@ Next, learn how to lay out your graphical user interface. Typically, you start w
      -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_java_interaction.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_java_interaction.html index fb2dd2a11..1ca7b44b8 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_java_interaction.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_java_interaction.html @@ -208,7 +208,7 @@ The startGame() example simply switches the -

      view online version

      \ No newline at end of file +

      view online version

      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_java_layout.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_java_layout.html index 527e9d89a..c160029db 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_java_layout.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_java_layout.html @@ -33,7 +33,7 @@ Sample project
    24. Download demo project: (jme3-ready)
      The full demo ZIP is based on de.lessvoid.nifty.examples.controls.ControlsDemo.java.
        -
      1. The demo is a SimpleApplication-based game (use e.g. the BasicGame template in the jMonkeyPlatform).
        +
      2. The demo is a SimpleApplication-based game (use e.g. the BasicGame template in the jMonkeyEngine SDK).
      3. Copy images and sound files into your project's assets/Interface/ directory. (In this example, I copied them from nifty-default-controls-examples/trunk/src/main/resources/ to assets/Interface/).
      4. @@ -606,7 +606,7 @@ Before initializing the nifty screens, you set up properties and register media. setDebugOptionPanelColors(true); Highlight all panels, makes it easier to arrange them. - +

        Example: @@ -636,4 +636,4 @@ Integrate the GUI into the g -

        view online version

        \ No newline at end of file +

        view online version

        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_overlay.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_overlay.html index b8deaf613..d21488271 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_overlay.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_overlay.html @@ -86,4 +86,4 @@ Now that you have layed out and integrated the view online version

        \ No newline at end of file +

        view online version

        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_projection.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_projection.html index 5e9145120..dc06e98c6 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_projection.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_projection.html @@ -105,4 +105,4 @@ Now that you have layed out and integrated the view online version

        \ No newline at end of file +

        view online version

        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_xml_layout.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_xml_layout.html index 39dcf5198..f00950511 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_xml_layout.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/nifty_gui_xml_layout.html @@ -231,6 +231,13 @@ The hud-frame.png image is a transparent frame that we use as HUD decoration. In <image filename="Interface/tutorial/step2/hud-frame.png"></image> </layer> +

        +In order to make the hud-frame.png independent of the screen resolution you are using, you could use the imageMode attribute on the image element +

        +
            <layer id="background" childLayout="center">
        +        <image filename="Interface/tutorial/step2/hud-frame.png" imageMode="resize:40,490,110,170,40,560,40,270,40,560,40,40" width="100%" height="100%"/>
        +    </layer>
        +

        The face1.png image is an image that you want to use as a status icon. In the hud screen's foreground layer, add the following image element: @@ -377,4 +384,4 @@ Integrate the GUI into the g -

        view online version

        \ No newline at end of file +

        view online version

        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/open_game_finder.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/open_game_finder.html index 446e711f8..a965d4c99 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/open_game_finder.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/open_game_finder.html @@ -192,4 +192,4 @@ A: TBD -

        view online version

        \ No newline at end of file +

        view online version

        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/particle_emitters.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/particle_emitters.html index f79b93a3b..6d57fab56 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/particle_emitters.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/particle_emitters.html @@ -9,7 +9,8 @@ Creating an effect involves some trial and error to get the settings just ri

        -Tip: Use the Scene Editor in the jMonkeyPlatform to design and preview effects. +

        Use the Scene Explorer in the SDK to design and preview effects. +

        @@ -114,7 +115,7 @@ false = Particles fly straight like you drew them in the sprite texture (e.g. in start area setShape(new EmitterSphereShape( Vector3f.ZERO, 2f));EmitterPointShape()By default, particles are emitted from the emitters location (a point). You can increase the emitter shape to occupy a sphere, so that the start point of new particles can be anywhere inside the sphere, which makes the effect a bit more irregular. - +

        Build up you effect by specifying one parameter after the other. If you change several parameters at the same time, it's difficult to tell which of the values caused which outcome.

        @@ -194,7 +195,7 @@ The following effect textures are available by default from test-data.jar< Effects/Smoke/Smoke.png 1*15 - +

        Tip: Use the setStartColor()/setEndColor() settings described above to colorize the white and gray parts of textures. @@ -233,4 +234,4 @@ See also:

        -

        view online version

        \ No newline at end of file +

        view online version

        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/physics.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/physics.html index 71101321f..65d3cee1f 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/physics.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/physics.html @@ -533,4 +533,4 @@ removeCollideWithGroup(COLLISION_GROUP_01)Collision Groups are integer -

        view online version

        \ No newline at end of file +

        view online version

        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/physics_listeners.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/physics_listeners.html index 03c6384e8..663ae088f 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/physics_listeners.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/physics_listeners.html @@ -174,4 +174,4 @@ Note that after the collision method has been called the object is not valid any -

        view online version

        \ No newline at end of file +

        view online version

        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/post-processor_water.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/post-processor_water.html index e339c89c3..fb5294186 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/post-processor_water.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/post-processor_water.html @@ -275,4 +275,4 @@ See also: -

        view online version

        \ No newline at end of file +

        view online version

        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/ragdoll.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/ragdoll.html index ed86f661e..41ff62c3f 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/ragdoll.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/ragdoll.html @@ -213,4 +213,4 @@ If you experience weird behaviour in a ragdoll – such as exploding into pieces -

        view online version

        \ No newline at end of file +

        view online version

        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/read_graphic_card_capabilites.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/read_graphic_card_capabilites.html index ce46f29c5..83e87bca2 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/read_graphic_card_capabilites.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/read_graphic_card_capabilites.html @@ -26,4 +26,4 @@ This would tell you that this user's graphic card only supports OpenGL 2.0

        -

        view online version

        \ No newline at end of file +

        view online version

        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/remote-controlling_the_camera.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/remote-controlling_the_camera.html index 6ec2b28cb..cdd2b3351 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/remote-controlling_the_camera.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/remote-controlling_the_camera.html @@ -50,4 +50,4 @@ If desired, attach the camNode to a MotionTrack to let it travel along waypoints

        -

        view online version

        \ No newline at end of file +

        view online version

        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/save_and_load.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/save_and_load.html index 4c57fdd1a..13e7a28c4 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/save_and_load.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/save_and_load.html @@ -4,11 +4,20 @@

        -You can save and load scenes and individual Nodes using com.jme3.export.binary.BinaryExporter and com.jme3.export.binary.BinaryImporter. Use standard Java serialization to load game data. The jMonkeyEngine binary file format is .j3o. You can open, view, and edit .j3o files in the jMonkeyPlatform. +You can save and load scenes and individual Nodes using com.jme3.export.binary.BinaryExporter and com.jme3.export.binary.BinaryImporter. Use standard Java serialization to load game data. The jMonkeyEngine binary file format is .j3o. You can open, view, and edit .j3o files in the jMonkeyEngine SDK.

        +

        Sample Code

        +
        +
          +
        • +
        • +
        + +
        +

        Saving a Node

          @Override
        @@ -45,4 +54,4 @@ You can save and load scenes and individual Nodes using com.jme3.export.binary.B
          
        -

        view online version

        \ No newline at end of file +

        view online version

        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/shaderblow_glass.jpg b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/shaderblow_glass.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8974aa3c64299cf372c9f0c359ccf9f1206f2f6d GIT binary patch literal 2437 zcmb7_dmz&b8^?chn}`^S*RsM~=DJvD%-o0EC6_soMJL2^$y^Rfx?mILP6;j7B6sD~ z5px;k+FU|m&O}Tuq1w^=*LnYZpXbld^Zh>G=dXv$ zT+`gz%n+w%ghBr@0SO5Ui;9Rs#l)a!6?ql(|6SZyfVd!#4LI_GhnHV~4}1W1#Q+`Nj|G5@Nv766S=XU7(Tt(*km94CJE@+WZh5rd~V3@+TMGmL6+=UagKA3ei>p) z#bhFOis9NU6=#&zNX?9meQPuXJIlv!#s%`<9&$5Dj~pkPzkLS+bwzV0vIT%2Uy}ZtNz?XD4Ie1Q|#v zx`|`{T%NKTMqO5BT_ZplL|iRJHd_0w&C=RvrfjiR?Tfz@$58vsnzO@-K3XUanRhnm zi``X?@W3ZQrDS0bPyKYzUu7%k@uj)V&jCLI(NTraj6W_qOcrTA6{%CV6h*ejORt_E zoTVGmA7q{Qf?Tu5*%nhtl~LI~PzkU~YWC%RAimyxxRxaH7oG? zHAR6TTZa_pBYGoy`@=D`@%rXT)>E;o!PQRa3YB3-WvOusCw4YSXgU95%~egfyTJ>F zFP@;63;RJ?uG;dJ+xTgoJm8LheN3W@!64pj5j^4;ha@+Sj8#weSGOf?(BnckK6q*L zbu<3BbWxjlbLac`c8`ZfdC@>ZS6Prv;)5)?m)B*NLZTN&G*;k4e|B~N2)7FuomR{o z7dUs}WBc6|lx>l~PQ-nt0%(74iJ8U)PXC0hFyVr<9QgoE!=0_QRmWxLw`EaU zHce^fs!`wBFom=pb~9eIeW!~+kuZq7$e=4eIMdB3h(EsGtGE-ny}raxl?ro(;+ zs;Zs zJXSgnXL}3u>SL0P-eH$?oSo|%C8-1OQ!s4GWz#wS-?bkAE8Wue_4>t|ZQ z#Hrot^LPE*M`#N=tkcSJ$t|()O0S7;Y)Xsmff zcC`HCLOgzTr?Qfo|Lz;qct2Y?St_4kiBxD7%4TQ80EbW|95}Un`Z_c^#hN7d72bOI zh5KG>0Ly8q(|uKGZ+Yl(GNT9HCJbZ8S%hVPRtsI1FOJe$PH|2@)agU^NTNwgtv}gI zTi0_derfFURTx$~$x_)i1v5c}`5A?LxJJBJJwevf(Yw&j}J$o!10N*OrK^GdGv==PH~hi-#qyUl*y5bMAS9VKw|z z6NuSChSfcQAfDgZmQ&E@f(T#^hl76CkS5Ap?dBh|W z@38lsXo@LOALawcdoKESJ3$+K79iSoM#D@5GT$nlQW%;5dW#L~7DIdA@Ful+yukbhg1VdKFTGgo>I6 zf1us2+Ri3TR*f~J)F@pZ{wN4}3V|RW7~XtGL41^A&!C4dy&SO>BeXRHWqwH3jz7Ws z8$rbAY)io33AB5U@?RUX~NQ1PY70OSn8rPz@Ra4L7_iVl9WO6AaD^3<^)xl*)i z)A{$OkEt3pY?yMIAq~NQnH(39bhAjBL5%xHl29_Q{W8ucg=|ZmQ%}>aQBU=l<{*s* RB;Bf%B(SQvRC?gYdb8{7) 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 literal 0 HcmV?d00001 diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/shadow-sponza-ssao.png b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/shadow-sponza-ssao.png new file mode 100644 index 0000000000000000000000000000000000000000..892fb411e15949f4a54b14c2cb5b948946790bf6 GIT binary patch literal 21289 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ð5rzl^G<0n1Nf8=F8-%%^g+}mGxw}Kf>1EYy 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
      5. com.jme3.scene.shape.Sphere – A ball or elipsoid.
      6. -
      7. com.jme3.scene.shape.Dome – Semi-sphere, e.g. SkyDome.
        +
      8. com.jme3.scene.shape.Dome – A semi-sphere, e.g. SkyDome.
        +
          +
        • For a cone, set the Dome's radialSamples>4 and planes=2.
          +
        • +
        • For a pyramid, set the Dome's radialSamples=4 and planes=2.
          +
        • +
      9. com.jme3.scene.shape.Torus – An single-holed torus or "donut".
      10. @@ -144,4 +150,4 @@ geom.setMaterial(mat); rootNode.attachChild(geom); -

        view online version

        \ No newline at end of file +

        view online version

        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/sky.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/sky.html index 4f8cb470c..6080e249a 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/sky.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/sky.html @@ -98,4 +98,4 @@ Box or Sphere? -

        view online version

        \ No newline at end of file +

        view online version

        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/spatial.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/spatial.html index 059579d90..2b30f2a8e 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/spatial.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/spatial.html @@ -48,10 +48,10 @@ mesh, material; Transformations; custom user data;
        no mesh, no material. - Examples: A box, a sphere, player, a building, a piece of terrain, a vehicle, missiles, NPCs, etc… The rootNode, the guiNode, an audio node, a custom grouping node, etc… + Examples: Box, sphere, player, building, terrain, vehicle, missiles, NPCs, etc… The rootNode, the guiNode, an audio node, a custom grouping node, etc… - +

        You never create a Spatial with Spatial s = new Spatial();! A Spatial is an abstract concept, like a mammal (there is no actual creature called "mammal" walking around here). You create a Node, or load a Geometry object. Some methods however require a Spatial argement: This is because they are able to accept both Nodes and Geometries as arguments. In this case, you must cast a Node or Geometry to Spatial. @@ -79,34 +79,56 @@ The polygon Mesh i
        -

        How to Add User Data to a Spatial

        +

        How to Add Fields and Methods to a Spatial

        -You can include custom Java objects in Nodes and Geometries. This is useful for maintaining information about a game element, such as health, budget, ammunition, inventory, equipment, etc for players, or landmark locations for terrains, and much more. Where ever the spatial is accessible, you can also access the object's game data. +You can include custom Java objects in Nodes and Geometries. This is useful for maintaining information about a game element, such as health, budget, ammunition, inventory, equipment, etc for players, or landmark locations for terrains, and much more.

        -
        // create and instance of your custom data class
        -PlayerData playerData = new PlayerData("joe", 0, 100); 
        -// store custom data in Node or Geometry
        -player.setUserData("player data", playerData); 
        +
        +

        +You do not need to create a custom class that extends Node or Geometry to be able to add custom fields to a spatial – use the setUserData() method instead. Neither do need to create a custom class that extends Node to be able to add custom accessor methods to this spatial – use a Control instead. Where ever the spatial is accessible, you can also access the object's game data and accessors. +

        + +

        +For example when you initialize your custom PlayerControl class: + +

        +
        // init custom data fields in this Control's Spatial (Node or Geometry)
        +spatial.setUserData("Health", 100); 
        + +

        + +In your PlayerControl, you offer accessors that manipulate and get this custom data: + +

        +
        public int getHealth() {
        +  return (Integer)spatial.getUserData("Health");
        +}
        +public void setHealth(int h) {
        +  spatial.setUserData("Health",h);
        +}
        + +

        + +Elsewhere in your code, you can access this data wherever you have access to the spatial. + +

        +
        health = player_node.getControl(PlayerControl.class).getHealth();
         ...
        -// Elsewhere: retrieved data from Node or Geometry...
        -PlayerData playerData = player.getUserData("player data");
        -// ... set the data...
        -playerData.setHealth("99");
        -// ... or get the data for tests or to display it in the HUD.
        -health = playerData.getHealth();
        +player_node.getControl(PlayerControl.class).setHealth(99);

        -You can add as many data objects to a Spatial as you need. Just make sure to label them with different Strings (player data, player inventory, player equipment, etc). +You can add as many data objects (including Strings, Integers, Floats, Arrays,) to a Spatial as you need. Just make sure to label them with different Strings (health, inventory, equipment, etc). The saved data can also be custom Java objects if you make the Java class implement the Savable interface. When you save a Spatial as a j3o file, the custom data is saved too, and it will be restored the next time you load the j3o!

        -You can also list all data keys that are defined for one Spatial: + +You can list all data keys that are already defined for one Spatial:

        -
        for(String key : geom.getUserDataKeys()){
        -      System.out.println(geom.getName()+"'s keys: "+key);
        +
        for(String key : spatial.getUserDataKeys()){
        +      System.out.println(spatial.getName()+"'s keys: "+key);
         }
        @@ -120,7 +142,7 @@ Often after you load a scene or model, you need to access a part of it as an ind

          -
        1. Open the model in a 3D mesh editor, or in the jMonkeyPlatform's viewer.
          +
        2. Open the model in a 3D mesh editor, or in the jMonkeyEngine SDK's Scene Composer.
        3. Find out the existing names of sub-meshes in the model.
        4. @@ -135,4 +157,4 @@ In the following example, the Node house is the loaded model. The s
          Geometry submesh = (Geometry) houseScene.getChild("door 12");
          -

          view online version

          \ No newline at end of file +

          view online version

          \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/swing_canvas.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/swing_canvas.html index ac14fe381..92bcabe79 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/swing_canvas.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/swing_canvas.html @@ -177,4 +177,4 @@ Remember, to navigate in the scene, click and drag (!) the mouse, or press the W -

          view online version

          \ No newline at end of file +

          view online version

          \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/tanlglow1.png b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/tanlglow1.png index 3c12587fb64eaf8588a6d06c3062fa136885cced..4c9ee2ef9e98e93f65c9e76b55aa8c57bc2f67e4 100644 GIT binary patch literal 13531 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 literal 163501 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 z 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 - jME3's Terrain System
          +

          TerraMonkey - The jMonkeyEngine Terrain System

          + The goal of TerraMonkey is to provide a base implementation that will be usable for 80% of people's goals, while providing tools and a good foundation for the other 20% to build off of. Check out the videos in the following announcements:

            @@ -18,6 +19,7 @@ The goal of TerraMonkey is to provide a base implementation that will be usable

            + TerraMonkey is a GeoMipMapping quad tree of terrain tiles that supports real time editing and texture splatting. That's a mouth full! Lets look at each part:

              @@ -27,37 +29,52 @@ TerraMonkey is a GeoMipMapping quad tree of terrain tiles that supports real tim
            • Splatting: The ability to paint multiple textures onto your terrain. What differs here from JME2 is that this is all done in a shader, no more render passes. So it performs much faster.
            • -
            • Real-time editing: TerraMonkey will be editable in JMonkeyPlatform, and you will be able to do it in real time: raising and lowering terrain.
              +
            • Real-time editing: TerraMonkey terrains are editable in jMonkeyEngine SDK, and you are able to modify them in real time: raising and lowering terrain.
            -

            Current Features:

            +

            Current Features:

              -
            • Support for up to 3 splat textures.
              +
            • Support for 16 splat textures. You use a custom combination of Diffuse, Normal, Specular, and Glow Maps.
              +
            • +
            • GeoMipMapping: LodControl optimizes the level of detail
            • -
            • GeoMipMapping
              +
            • Terrain can be randomized or generated from a heightmap
            • -
            • can be supplied a heightmap
              +
            • jMonkeyEngine SDK terrain editor
              +
            • +
            • Streaming terrain grid (ie. "infinite" terrain)
            -

            Planned Features:

            +

            Planned Features:

              -
            • jMonkeyPlatform terrain editor
              +
            • Hydraulic erosion and procedural texture generation
            • -
            • Support for up to 16 splat textures.
              +
            • Holes: caves, cliffs
            • -
            • Hydraulic erosion and procedural texture generation
              +
            + +
            + +

            Sample Code

            +
            +
              +
            • -
            • Streaming terrain (ie. "infinite" terrain)
              +
            • -
            • Holes: caves, cliffs
              +
            • +
            • +
            • +
            • +
            @@ -67,14 +84,16 @@ TerraMonkey is a GeoMipMapping quad tree of terrain tiles that supports real tim

            -You have seen GeoMipMapping implemented in games before. This is where the farther away terrain has fewer polygons, and as you move closer, more polygons fill in. The whole terrain is divided into a grid of patches, and each one has its own LOD. The GeoMipMapping algorithm will look at each patch, and its neighbours, to determine how to render the geometry. It will seam the edges between two patches with different LOD. -This often leads to "popping" where you see the terrain switch from one LOD to another. TerraMonkey has been designed so you can swap out different LOD calculation algorithms based on what will look best for your game. -You can do this with the LodCalculator interface. -GeoMipMapping in TerraMonkey has been split into several parts: the terrain quad tree, and the LODGeomap. The geomap deals with the actual LOD and seaming algorithm. So if you want a different data structure for your terrain system, you can re-use this piece of code. -The quad tree (TerrainQuad and TerrainPatch) provide a means to organize the LODGeomaps, notify them of their neighbour's LOD change, and to update the geometry when the LOD does change. -To change the LOD it does this by changing the index buffer of the triangle strip, so the whole geometry doesn't have to be re-loaded onto the video card. -If you are eager, you can read up more detail how GeoMipMapping works here: +You have seen GeoMipMapping implemented in games before. This is where the farther away terrain has fewer polygons, and as you move closer, more polygons fill in. The whole terrain is divided into a grid of patches, and each one has its own level of detail (LOD). The GeoMipMapping algorithm looks at each patch, and its neighbours, to determine how to render the geometry. It will seam the edges between two patches with different LOD. +

            + +

            +GeoMipMapping often leads to "popping" where you see the terrain switch from one LOD to another. TerraMonkey has been designed so you can swap out different LOD calculation algorithms based on what will look best for your game. You can do this with the LodCalculator interface. +

            + +

            +GeoMipMapping in TerraMonkey has been split into several parts: the terrain quad tree, and the LODGeomap. The geomap deals with the actual LOD and seaming algorithm. So if you want a different data structure for your terrain system, you can re-use this piece of code. The quad tree (TerrainQuad and TerrainPatch) provide a means to organize the LODGeomaps, notify them of their neighbour's LOD change, and to update the geometry when the LOD does change. To change the LOD it does this by changing the index buffer of the triangle strip, so the whole geometry doesn't have to be re-loaded onto the video card. If you are eager, you can read up more detail how GeoMipMapping works here:

            @@ -83,8 +102,8 @@ If you are eager, you can read up more detail how GeoMipMapping works here:

            -TerraMonkey is a quad tree. Each node is a TerrainQuad, and each leaf is a TerrainPatch. A TerrainQuad has either 4 child TerrainQuads, or 4 child TerrainPatches. The TerrainPatch holds the actual mesh geometry. This structure is almost exactly the same as JME2's TerrainPage system. Except now each leaf has a reference to its neighbours, so it doesn't ever have to traverse the tree to get them. +TerraMonkey is a quad tree. Each node is a TerrainQuad, and each leaf is a TerrainPatch. A TerrainQuad has either 4 child TerrainQuads, or 4 child TerrainPatches. The TerrainPatch holds the actual mesh geometry. This structure is almost exactly the same as JME2's TerrainPage system. Except now each leaf has a reference to its neighbours, so it doesn't ever have to traverse the tree to get them.

            @@ -93,22 +112,122 @@ TerraMonkey is a quad tree. Each node is a TerrainQuad, and each leaf is a Terra

            -The default material for TerraMonkey is Terrain.j3md. This material combines an alphamap with several textures to produce the final texture. -Right now there is support for only 3 textures and an alpha map. This is in place until we finish the terrain editor in JMP, and then the texture support will be 16 textures. -It is only 3 right now so you can hand-paint them in a drawing program, like Photoshop, setting each splat texture in either Red, Green, or Blue. The test case has an example texture to show you how this works. -Along with getting more splat texture support, we will be adding in lighting and normal mapping support. The normal mapping isn't fully planned out yet. We need to decide how we are going to handle a normal map for each texture that is passed in. That could generate some very odd effects. -Thoughts, ideas, and recommendations are appreciated! +We recommend to . If you are curious or want to create materials manually, read on for the implementation details: +

            + +

            +When you "slap" a texture on a mesh, the whole mesh looks the same. For big meshes (such as terrains) that is undesirable because it looks very boring (your whole landscape would be all rock, or all grass, or all sand). Texture Splatting is a technique that lets you "paint" several textures into one combined texure. Each of the splat textures has an opacity value so you can define where it is visible in the final overall texture. +

            + +

            +The default material for TerraMonkey is TerrainLighting.j3md. This material combines several texture maps to produce the final custom texture. Remember, Diffuse Maps are the main textures that define the look; optionally, each Diffuse Map can be enhanced with a Normal Map; Alpha Maps describe the opacity of each Diffuse Map used (one color –red, green, blue, or alpha– stands for one Diffuse Map's opacity); Glow and Specular Maps define optional effects. Here are the names of the material properties: + +

            +
              +
            • 1-3 Alpha Maps
              +
                +
              • AlphaMap
                +
              • +
              • AlphaMap_1
                +
              • +
              • AlphaMap_2
                +
              • +
              +
            • +
            • 12 Diffuse and/or Normal Maps (either in pairs, or stand-alone Diffuse Maps)
              +
                +
              • DiffuseMap
                +
              • +
              • NormalMap
                +
              • +
              • DiffuseMap_1
                +
              • +
              • NormalMap_1
                +
              • +
              • DiffuseMap_2
                +
              • +
              • NormalMap_2
                +
              • +
              • etc, up to …Map_11.
                +
              • +
              +
            • +
            • "Light" maps
              +
                +
              • GlowMap
                +
              • +
              • SpecularMap
                +
              • +
              +
            • +
            + +

            + +Video cards support a maximum of 16 Splat textures total. This means you can only use a subset of material properties at the same time! Follow these constraints: +

            +
              +
            • 1-12 Diffuse Maps
              +
            • +
            • 1-3 Alpha Maps (for each 4 Diffuse Maps, you need 1 more Alpha Map!)
              +
            • +
            • 0-6 Normal Maps (number must be equal or less than number of Diffuse Maps, since they come in pairs!)
              +
            • +
            • 0 or 1 Glow Map
              +
            • +
            • 0 or 1 Specular Map.
              +
            • +
            • The sum of all maps used must be 16 or less.
              +
            • +
            + +

            + +Here are some common examples what this means: +

            +
              +
            • 3 Alpha + 12 Diffuse + 1 Normal.
              +
            • +
            • 3 Alpha + 12 Diffuse + 1 Glow.
              +
            • +
            • 3 Alpha + 12 Diffuse + 1 Specular.
              +
            • +
            • 3 Alpha + 10 Diffuse + 3 Normal.
              +
            • +
            • 3 Alpha + 10 Diffuse + 1 Normal + 1 Glow + 1 Specular.
              +
            • +
            • 2 Alpha + 8 Diffuse + 6 Normal.
              +
            • +
            • 2 Alpha + 6 Diffuse + 6 Normal + 1 Glow + 1 Specular.
              +
            • +
            • 1 Alpha + 3 Diffuse + 3 Normal + 1 Glow + 1 Specular (rest unused)
              +
            • +
            + +

            + +You can hand-paint Alpha, Diffuse, Glow, and Specular maps in a drawing program, like Photoshop. Define each splat texture in the Alpha Map in either Red, Green, Blue, or Alpha (=RGBA). The JmeTests project bundled in the SDK includes some image files that show you how this works. The following images show the terrains heightmap next to its Alpha Map (ready for 3 Diffuse Maps) and one exemplary Diffuse/Normal Map pair. +

            +

            + + + +

            -

            Code Sample

            +

            Code Sample: Terrain.j3md

            -First, we load our textures and the heightmap texture for the terrain +This example shows the simpler material definition Terrain.j3md, which only supports 1 Alpha Map, 3 Diffuse Maps, 3 Normal Maps, and does not support Phong illumination. It makes the exmaple shorter – TerrainLighting.j3md works accordingly (The list of material properties see above. Links to extended sample code see above.) +

            + +

            +First, we load our textures and the heightmap texture for the terrain

            // Create material from Terrain Material Definition
             matRock = new Material(assetManager, "Common/MatDefs/Terrain/Terrain.j3md");
            @@ -133,9 +252,7 @@ matRock.setTexture("m_Tex3", rock);
             matRock.setFloat("m_Tex3Scale", 128f);

            - We create the heightmap from the heightMapImage. -

            AbstractHeightMap heightmap = null;
             heightmap = new ImageBasedHeightMap(
            @@ -143,7 +260,6 @@ heightmap = new ImageBasedHeightMap(
             heightmap.load();

            - Next we create the actual terrain.

              @@ -166,11 +282,9 @@ terrain.addControl(control); rootNode.attachChild(terrain);

              - PS: As an alternative to an image-based height map, you can also generate a Hill hightmap: -

              heightmap = new HillHeightMap(1025, 1000, 50, 100, (byte) 3);
            -

            view online version

            \ No newline at end of file +

            view online version

            \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/terrain_collision.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/terrain_collision.html index 109684dea..574510237 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/terrain_collision.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/terrain_collision.html @@ -321,4 +321,4 @@ See also:
          -

          view online version

          \ No newline at end of file +

          view online version

          \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/underwater2.jpg b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/underwater2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..01bb0b907131186116e4116f063035ded36948c0 GIT binary patch literal 12512 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 -

          view online version

          \ No newline at end of file +

          view online version

          \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/vehicles.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/vehicles.html index 721b9205e..c70b3b078 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/vehicles.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/vehicles.html @@ -338,4 +338,4 @@ For a more advanced example, look at 1) -

          view online version

          \ No newline at end of file +

          view online version

          \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/walking_character.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/walking_character.html index 3cab684bf..d3aa4b54b 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/walking_character.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/walking_character.html @@ -3,7 +3,11 @@

          -In the code sample you have seen how to create collidable landscapes and walk around in a first-person perspective, where the camera is enclosed by a collision shape. Other games however require a third-person perspective of the character: In these cases you use a CharacterControl. This example uses a custom navigation – press WASD to walk and drag the mouse to rotate. +In the Hello Collision tutorial and the code sample you have seen how to create collidable landscapes and walk around in a first-person perspective. The first-person camera is enclosed by a collision shape and is steered by a CharacterControl. +

          + +

          +Other games however require a third-person perspective of the character: In these cases you use a CharacterControl on a Spatial. This example also shows how to set up custom navigation constrols, so you can press WASD to make the third-person character walk, and drag the mouse to rotate.

          @@ -32,10 +36,13 @@ The several related code samples can be found here:
        5. (first-person view)
        6. +
        7. (first-person view)
          +
        8. -The code in this tutorial is a combination of them. + +The code in this tutorial is a combination of these samples.

          @@ -345,4 +352,4 @@ public void onAnimChange(AnimControl control, AnimChannel channel, String an
          -

          view online version

          \ No newline at end of file +

          view online version

          \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/water-reflection-muddy.png b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/advanced/water-reflection-muddy.png new file mode 100644 index 0000000000000000000000000000000000000000..29d04ff4cb2febd78a7af5f91fc77cfb495ec7ba GIT binary patch literal 28649 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 -

          view online version

          \ No newline at end of file +

          view online version

          \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/android.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/android.html index dbc9110af..9f92a39e0 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/android.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/android.html @@ -16,9 +16,9 @@ This is a draft of a feature that is work in progress. If you have questions or
        9. Install or better.
        10. -
        11. Install jMonkeyPlatform
          +
        12. Install jMonkeyEngine SDK
        13. -
        14. Install Android Project support in the jMonkeyPlatform:
          +
        15. Install Android Project support in the jMonkeyEngine SDK:
          1. Open Tools→Plugins→Settings
          2. @@ -68,12 +68,12 @@ This is a draft of a feature that is work in progress. If you have questions or -

            jMonkeyPlatform Android Integration

            +

            jMonkeyEngine SDK Android Integration

            -Mobile deployment is a "one-click" option next to Desktop/WebStart/Applet deployment in the jMonkeyPlatform. +Mobile deployment is a "one-click" option next to Desktop/WebStart/Applet deployment in the jMonkeyEngine SDK.

            • Automatic creation of Android harness and settings.
              @@ -89,9 +89,9 @@ Mobile deployment is a "one-click" option next to Desktop/WebStart/App

              Beta Instructions

                -
              1. Make sure you have installed the Android Project Support into the jMonkeyPlatform.
                +
              2. Make sure you have installed the Android Project Support into the jMonkeyEngine SDK.
              3. -
              4. Open the jMonkeyPlatform Options>Mobile and enter the path to your Android SDK directory, and click OK. E.g. /opt/android-sdk
                +
              5. Open the jMonkeyEngine SDK Options>Mobile and enter the path to your Android SDK directory, and click OK. E.g. /opt/android-sdk
              @@ -124,7 +124,7 @@ The Android deployment option creates a separate sub-project for android and mak

              -Activating the nbandroid plugin in the jMonkeyPlatform is optional, but recommended. You do not need the nbandroid plugin for Android support to work, however nbandroid will not interfere and will in fact allow you to edit the android source files and project more conveniently. To be able to edit, extend and code android-specific code in Android projects, install NBAndroid from the update center: +Activating the nbandroid plugin in the jMonkeyEngine SDK is optional, but recommended. You do not need the nbandroid plugin for Android support to work, however nbandroid will not interfere and will in fact allow you to edit the android source files and project more conveniently. To be able to edit, extend and code android-specific code in Android projects, install NBAndroid from the update center:

              1. Open Tools→Plugins→Settings
                @@ -137,7 +137,7 @@ Activating the nbandroid plugin in the jMonkeyPlatform is optional, but recommen

                -Restart the jMonkeyPlatform. +Restart the jMonkeyEngine SDK.

              @@ -147,7 +147,7 @@ Restart the jMonkeyPlatform.

              -Open your game project in the jMonkeyPlatform. +Open your game project in the jMonkeyEngine SDK.

              1. Right-click the project node and choose Set Main Project.
                @@ -194,15 +194,15 @@ Optionally, download SDK to save (theoretically) any jMonkeyEngine app as Android app. But the application has to be prepared for the fact that Android devices have a smaller screen resolution, touchscreens instead of mouse buttons, and (typically) no keyboards.

                • Inputs: Devise an alternate control scheme that works for Android users (e.g. using com.jme3.input.controls.TouchListener). This mobile scheme is likely quite different from the desktop scheme.
                • -
                • Effects: Android devices do no support 3D features as well as PCs – or even not at all. E.g. post-processor filters (depth-of-field blur, bloom, light scattering, cartoon, etc), drop shadows, water effects, 3D Audio. Be prepared that these effects will (at best) slow down the application or (in the worst case) not work at all. Provide the option to switch to a low-fi equivalent!
                  +
                • Effects: Android devices do no support 3D features as well as PCs – or even not at all. This restriction includes post-processor filters (depth-of-field blur, bloom, light scattering, cartoon, etc), drop shadows, water effects, 3D Audio. Be prepared that these effects will (at best) slow down the application or (in the worst case) not work at all. Provide the option to switch to a low-fi equivalent!
                • -
                • Nifty GUI: Use different base UI layout XML files for the mobile version of your app to account for the different screen settings.
                  +
                • Nifty GUI: Use different base UI layout XML files for the mobile version of your app to account for a different screen resolution.
                @@ -247,4 +247,4 @@ The SDK will later provide t -

                view online version

                \ No newline at end of file +

                view online version

                \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_animation.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_animation.html index a8e588f79..14e9d9c3a 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_animation.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_animation.html @@ -325,4 +325,4 @@ See also: -

                view online version

                \ No newline at end of file +

                view online version

                \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_asset.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_asset.html index 59cef6a06..4b742a21c 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_asset.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_asset.html @@ -17,7 +17,7 @@ In this tutorial we will learn to load 3-D models and text into the scene graph,

                -

                To use the example assets in a new jMonkeyPlatform project, right-click your project, select "Properties", go to "Libraries", press "Add Library" and add the "jme3-test-data" library. +

                To use the example assets in a new jMonkeyEngine SDK project, right-click your project, select "Properties", go to "Libraries", press "Add Library" and add the "jme3-test-data" library.

                @@ -240,7 +240,7 @@ JME3 offers ClasspathLocator, ZipLocator, FileLocator, HttpZipLocator, and UrlLo

                To create 3D models and scenes, you need a 3D Mesh Editor with an OgreXML Exporter plugin. For example, you can . -You use the jMonkeyPlatform to load models, convert models and create scenes from them. +You use the SDK to load models, convert models and create scenes from them.

                @@ -278,7 +278,7 @@ If you use Blender, export your models as Ogre XML models + materials, Ogre DotScenes, as well as Wavefront OBJ+MTL models. The loadModel() code works with these files when you run the code directly from the jMonkeyPlatform. +JME3 can load Ogre XML models + materials, Ogre DotScenes, as well as Wavefront OBJ+MTL models. The loadModel() code works with these files when you run the code directly from the jMonkeyEngine SDK.

                @@ -295,11 +295,11 @@ Loading the XML/OBJ files

                -For testing and for the final release build, you use .j3o files exclusively. J3o is an optimized binary format for jME3 applications, and .j3o files are automatically included in the distributable JAR file by the build script. When you do QA test builds or are ready to release, use the jMonkeyPlatform to convert all .obj/.scene/.xml/.blend files to .j3o files, and only load the .j3o versions. +For testing and for the final release build, you use .j3o files exclusively. J3o is an optimized binary format for jME3 applications, and .j3o files are automatically included in the distributable JAR file by the build script. When you do QA test builds or are ready to release, use the SDK to convert all .obj/.scene/.xml/.blend files to .j3o files, and only load the .j3o versions.

                -Open your JME3 Project in the jMonkeyplatform. +Open your JME3 Project in the jMonkeyEngine SDK.

                1. Right-click a .Blend, .OBJ, or .mesh.xml file in the Projects window, and choose "convert to JME3 binary".
                  @@ -346,7 +346,7 @@ rootNode.attachChild(scene);
                - +

                Excercise - How to Load Assets

                @@ -431,7 +431,7 @@ Here is a third method you must know, loading a scene/model from a .j3o file:
                1. Remove the code from the previous exercise.
                2. -
                3. If you haven't already, open the jMonkeyPlatform and open the project that contains the HelloAsset class.
                  +
                4. If you haven't already, open the SDK and open the project that contains the HelloAsset class.
                5. In the projects window, browse to the assets/Scenes/town directory.
                6. @@ -497,4 +497,4 @@ Let's add some action to the scene and continue with the view online version

                  \ No newline at end of file +

                  view online version

                  \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_audio.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_audio.html index 348270cd1..567727aeb 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_audio.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_audio.html @@ -380,4 +380,4 @@ See also: -

                  view online version

                  \ No newline at end of file +

                  view online version

                  \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_collision.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_collision.html index 63bab7ede..6bc269592 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_collision.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_collision.html @@ -535,4 +535,4 @@ Related info: -

                  view online version

                  \ No newline at end of file +

                  view online version

                  \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_effects.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_effects.html index db472fb6e..48c011fa3 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_effects.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_effects.html @@ -326,7 +326,7 @@ Add and modify one parameter at a time, and try different values until you get t

                  -

                  Tip: Use the jMonkeyPlatform SceneComposer to create effects more easily. Create an empty scene and add an emitter object to it. Change the emitter properties and watch the outcome live. You can save created effects as .j3o file and load them like scenes or models. +

                  Tip: Use the SceneComposer in the jMonkeyEngine SDK to create effects more easily. Create an empty scene and add an emitter object to it. Change the emitter properties and watch the outcome live. You can save created effects as .j3o file and load them like scenes or models.

                  @@ -374,4 +374,4 @@ Now you move on to another exciting chapter – the simulation of -

                  view online version

                  \ No newline at end of file +

                  view online version

                  \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_input_system.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_input_system.html index d0e0652cd..94e30e87c 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_input_system.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_input_system.html @@ -368,4 +368,4 @@ Now you can already write a little interactive game! But wouldn't it be coo -

                  view online version

                  \ No newline at end of file +

                  view online version

                  \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_main_event_loop.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_main_event_loop.html index d64a8b8a6..722f15739 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_main_event_loop.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_main_event_loop.html @@ -180,8 +180,12 @@ The next thing the game needs is some interaction! Continue learning ho

                  -See also: Advanced jME3 developers additionally use Application States and Custom Controls to implement more complex mechanics in their game loops. You will come across these topics later when you proceed to advanced documentation. +See also:

                  +
                    +
                  • Advanced jME3 developers use Application States and Custom Controls to implement game mechanics in their update loops. You will come across these topics again later when you proceed to more advanced documentation.
                    +
                  • +
                  documentation, state, @@ -193,4 +197,4 @@ See also: Advanced jME3 developers additionally use view online version

                  \ No newline at end of file +

                  view online version

                  \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_material.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_material.html index 42cf185e5..2d992c8e7 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_material.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_material.html @@ -332,7 +332,7 @@ You create a j3m file as follows:
                7. Create a file assets/Materials/LeakThrough.j3m with the following content:
                  Material Leak Through : Common/MatDefs/Misc/Unshaded.j3md {
                        MaterialParameters {
                            Color : 1 0 1 1
                  -         ColorMap : Textures/ColoredTex/Monkey.png
                  +         ColorMap : Flip Textures/ColoredTex/Monkey.png
                        }
                   }
                  @@ -347,7 +347,7 @@ You create a j3m file as follows:
                8. In the code sample, comment out the three lines with mat_tl in them.
                9. -
                10. Below them, add the following line:
                  cube_leak.setMaterial((Material) assetManager.loadAsset( "Materials/LeakThrough.j3m"));
                  +
                11. Below them, add the following line:
                  cube_leak.setMaterial((Material) assetManager.loadMaterial( "Materials/LeakThrough.j3m"));
                12. Run the app. The result is the same.
                  @@ -421,7 +421,7 @@ See also
                13. (PDF)
                14. -
                15. +
                16. @@ -440,4 +440,4 @@ See also
                  -

                  view online version

                  \ No newline at end of file +

                  view online version

                  \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_node.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_node.html index 6a7ca97eb..981729243 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_node.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_node.html @@ -33,7 +33,7 @@ When creating a 3D game

                  -You will learn that the scene graph represents the 3D world, and why the rootNode is important. You will learn how to create simple objects, and how to "transform" them by moving, scaling, and rotating. You will understand the difference between the two types of "Spatials" in the scene graph: Nodes and Geometries. +You will learn that the scene graph represents the 3D world, and why the rootNode is important. You will learn how to create simple objects, how to let them carry custom data (such as health points), and how to "transform" them by moving, scaling, and rotating. You will understand the difference between the two types of "Spatials" in the scene graph: Nodes and Geometries.

                  @@ -122,7 +122,7 @@ In this tutorial, you learn some new terms: Make an object disappear from the sceneDetach the Spatial from the rootNode - +

                  Every JME3 application has a rootNode: Your game automatically inherits the rootNode object from SimpleApplication. Everything attached to the rootNode is part of the scene graph. The elements of the scene graph are Spatials. @@ -149,7 +149,7 @@ Every JME3 application has a rootNode: Your game automatically inherits the Examples: A box, a sphere, a player, a building, a piece of terrain, a vehicle, missiles, NPCs, etc… The rootNode, a floor node grouping several terrains, a custom vehicle-with-passengers node, a player-with-weapon node, an audio node, etc… - +

                  Understanding the Code

                  @@ -275,7 +275,7 @@ thing.setMaterial(mat); Specify what should be loaded at the start Everything you initialize and attach to the rootNode in the simpleInitApp() method is part of the scene at the start of the game. - +

                  How do I Transform Spatials?

                  @@ -301,7 +301,7 @@ To move a Spatial to specific coordinates, such as (0,40.2f,-2), use: < +right -left+up -down+forward -backward -
                  +
                  @@ -313,7 +313,7 @@ To scale a Spatial 10 times longer, one tenth the height, and keep the same widt
                  Scaling resizes Spatials X-axis Y-axis Z-axis
                  lengthheightwidth
                  -
                  +
                  @@ -329,7 +329,7 @@ To roll an object 180° around the z axis:
                  thing.rotate( 0f , 0f , 180*
                   
                  Rotation turns Spatials X-axis Y-axis Z-axis
                  pitch = nodding your headyaw = shaking your headroll = cocking your head
                  - +

                  How do I Troubleshoot Spatials?

                  @@ -360,7 +360,40 @@ Did you rotate around the right axis? A Geometry has an unexpected Color or Material. Did you reuse a Material from another Geometry and have inadvertently changed its properties? (If so, consider cloning it: mat2 = mat.clone(); ) - + + + +

                  How do I Add Custom Data to Spatials?

                  +
                  + +

                  + +Many Spatials represent game characters or other entities that the player can interact with. The above code that rotates the two boxes around a common center (pivot) could be used for a spacecraft docked to a orbiting space station, for example. +

                  + +

                  +Depending on your game, game entities do not only change their position, rotation, or scale (the transformations that you just learned about). Game entities also have custom properties, such as health, inventory carried, equipment worn for a character, or hull strength and fuel left for a spacecraft. In Java, you represent entity data as class variables, e.g. floats, Strings, or Arrays. +

                  + +

                  +You can add custom data directly to any Node or Geometry. You do not need to extend the Node class to include variables! +For example, to add a custom id number to a node, you would use: + +

                  +
                  pivot.setUserData( "pivot id", 42 );
                  + +

                  + +To read this Node's id number elsewhere, you would use: + +

                  +
                  int id = pivot.getUserData( "pivot id" ); 
                  + +

                  + +By using different Strings keys (here the key is pivot id), you can get and set several values for whatever data the Spatial needs to carry. When you start writing your game, you might add a fuel value to a car node, speed value to an airplane node, or number of gold coins to a player node, and much more. +

                  +

                  Conclusion

                  @@ -368,11 +401,11 @@ Did you rotate around the right axis?

                  -You have learned that your 3D scene is a scene graph made up of Spatials: Visible Geometries and invisible Nodes. You can transform Spatials, or attach them to nodes and transform the nodes. +You have learned that your 3D scene is a scene graph made up of Spatials: Visible Geometries and invisible Nodes. You can transform Spatials, or attach them to nodes and transform the nodes. You know the easiest way how to add custom entity properties (such as player health or vehicle speed) to Spatials.

                  -Since standard shapes like spheres and boxes get old fast, continue with the next chapter where you learn to load assets, such as 3-D models. +Since standard shapes like spheres and boxes get old fast, continue with the next chapter where you learn to load assets such as 3-D models.

                  beginner, @@ -384,4 +417,4 @@ Since standard shapes like spheres and boxes get old fast, continue with the nex
                  -

                  view online version

                  \ No newline at end of file +

                  view online version

                  \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_physics.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_physics.html index 9e41faefc..45e05c41f 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_physics.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_physics.html @@ -644,4 +644,4 @@ You have learned how to activate the jBullet PhysicsSpace in an application by a -

                  view online version

                  \ No newline at end of file +

                  view online version

                  \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_picking.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_picking.html index cca89a904..38bd0b403 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_picking.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_picking.html @@ -538,4 +538,4 @@ See also: -

                  view online version

                  \ No newline at end of file +

                  view online version

                  \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_simpleapplication.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_simpleapplication.html index a49cab246..2860e9b06 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_simpleapplication.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/beginner/hello_simpleapplication.html @@ -12,7 +12,7 @@ Next: Hello Node Prerequisites: This tutorial assumes that:

                    -
                  • You have (or set up the jMonkeyEngine3 in another IDE of your choice)
                    +
                  • You have (or set up the jMonkeyEngine3 in another IDE of your choice)
                  • @@ -20,7 +20,7 @@ Next: Hello Node

                    -You are ready to create your first jMonkeyEngine3 game! You can generally use the tutorials in this introductory series with any integrated development environment (IDE), such as the jMonkeyPlatform, NetBeans, Eclipse, or run them straight from the commandline. In the following, we will use the jMonkeyPlatform. +You are ready to create your first jMonkeyEngine3 game! You can generally use the tutorials in this introductory series with any integrated development environment (IDE), such as the jMonkeyEngine SDK, NetBeans, Eclipse, or run them straight from the commandline. In the following, we will use the jMonkeyEngine SDK.

                    @@ -34,7 +34,7 @@ Create a jme3test.helloworld package and a file HelloJME3.jav

                    -In the jMonkeyPlatform, you right-click the Source Packages node: +In the jMonkeyEngine SDK, you right-click the Source Packages node:

                    -

                    view online version

                    \ No newline at end of file +

                    view online version

                    \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/build_jme3_sources_with_netbeans.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/build_jme3_sources_with_netbeans.html index 875c07187..1c7667ec3 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/build_jme3_sources_with_netbeans.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/build_jme3_sources_with_netbeans.html @@ -182,4 +182,4 @@ Sources used: view online version

                    \ No newline at end of file +

                    view online version

                    \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/faq.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/faq.html index c81ce1040..414ac4ee4 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/faq.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/faq.html @@ -132,7 +132,7 @@ You create 3-D models in a 3-D mesh editor, for example Blender, and export it i

                    -Use the jMonkeyPlatform to convert models from Ogre XML or Wavefront OBJ formats to .j3o binary format. Load the .j3o file using the AssetManager. +Use the jMonkeyEngine SDK to convert models from Ogre XML or Wavefront OBJ formats to .j3o binary format. Load the .j3o file using the AssetManager.

                    // To load .../jMonkeyProjects/MyGame/assets/Models/Ninja/Ninja.mesh.xml
                    @@ -140,7 +140,7 @@ Spatial ninja = assetManager.loadModel("Models/Ninja/Ninja.mesh.xml&quo
                     
                     

                    -Learn more: Hello Asset, Asset Manager, , , jMonkeyPlatform j3o converter, +Learn more: Hello Asset, Asset Manager, , , jMonkeyEngine SDK j3o converter,
                    Code sample: , . @@ -798,4 +798,4 @@ Multiply degree value by FastMath.DEG_TO_RAD to convert it to radians.

                    -

                    view online version

                    \ No newline at end of file +

                    view online version

                    \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/intermediate/appsettings.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/intermediate/appsettings.html index 71576195f..b8f9f6543 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/intermediate/appsettings.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/intermediate/appsettings.html @@ -47,15 +47,12 @@ Set the boolean in the AppSettings contructor to true if you want to keep the de setRenderer(AppSettings.LWJGL_OPENGL3)Switch Video RendererOpenGL 2 - setBitsPerPixel(8)Set color depth.
                    -1 = black and white, 2 bit = gray,
                    -4 = 16 colors, 8 = 256 colors, 24 or 32 = "truecolor".24 + setBitsPerPixel(32)Set the color depth.
                    +1 bpp = black and white, 2 bpp = gray,
                    +4 bpp = 16 colors, 8 bpp = 256 colors, 24 or 32 bpp = "truecolor".24 - setFrequency(60)The screen frequency (refresh rate of the graphics card), usually 60 or 75 fps.60 fps - - - setFramerate(60)How often per second the engine should try to refresh the frame. For the release, usually 60 fps. Can be lower (59-30) for FX-intensive games. No use setting it to a higher value than the screen frequency. If the framerate goes below 30 fps, viewers start to notice choppiness or flickering.-1 (auto) + setFramerate(60)How often per second the engine should try to refresh the frame. For the release, usually 60 fps. Can be lower (30) if you need to free up the CPU for other applications. No use setting it to a higher value than the screen frequency! If the framerate goes below 30 fps, viewers start to notice choppiness or flickering.-1 (unlimited) setFullscreen(true)Set this to true to make the game window fill the whole screen; you need to provide a key that calls app.stop() to exit the fullscreen view gracefully (default: escape).
                    @@ -71,11 +68,13 @@ Set multisampling to 2 or 4 to activate antialising (softer edges, may be slower Depending on your graphic card, you may be able to set multisampling to higher values such as 8, 16, or 32 samples.0 - setVSync(true)Set vertical syncing to true to time the frame buffer to coincide with the refresh interval of the screen: Prevents page tearing, but slower; recommened for release.
                    -Set to false to deactivate vertical syncing (faster, but possible page tearing artifacts); can be deactivated during development.false + setVSync(true)
                    +setFrequency(60)Set vertical syncing to true to time the frame buffer to coincide with the refresh frequency of the screen. VSync prevents ugly page tearing artefacts, but is a bit slower; recommened for release build.
                    +Set VSync to false to deactivate vertical syncing (faster, but possible page tearing artifacts); can remain deactivated during development or for slower PCs.false
                    +60 fps -
                    +
                    @@ -86,19 +85,18 @@ Set to false to deactivate vertical syncing (faster, but possible page tearing a
                    Settings Property (Input)DescriptionDefault
                    setUseJoysticks(true)Activate optional joystick supportfalse
                    -
                    +
                    - + - +
                    Settings Property (Audio)DescriptionDefault
                    setAudioRenderer(AppSettings.LWJGL_OPENAL)
                    -setAudioRenderer(AppSettings.LWJGL_JOAL)
                    Switch Audio RendererOpenALsetAudioRenderer(AppSettings.LWJGL_OPENAL)Switch Audio Renderer. Currently there is only one option. OpenAL
                    setStereo3D(true)Enable 3D stereo. This feature requires hardware support from the GPU driver. See .falsesetStereo3D(true)Enable 3D stereo. This feature requires hardware support from the GPU driver. See . Currently, your everday user's hardware does not support this, so you can ignore it for now.false
                    -
                    +
                    @@ -113,7 +111,7 @@ ImageIO.read(new File("")), …});
                    Settings Property (Branding)DescriptionDefault
                    This specifies the little a setSettingsDialogImage("/path/to/splash.png")A custom splashscreen image in the assets directory which is displayed when the settings dialog is shown."/com/jme3/app/Monkey.png"
                    - +

                    Saving and Loading Settings

                    @@ -155,4 +153,4 @@ Provide the unique name of your jME3 application as the String argument. For exa -

                    view online version

                    \ No newline at end of file +

                    view online version

                    \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/intermediate/best_practices.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/intermediate/best_practices.html index 764d14715..9341f7f6a 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/intermediate/best_practices.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/jme3/intermediate/best_practices.html @@ -48,10 +48,10 @@ As a quick overview, answer yourself the following questions: -
                  • Media assets
                    +
                  • Multi-media assets
                    • Which media will you need? How will you get this content?
                      -models, terrains; materials, textures; audio, sound, music; video; spoken/written dialog; levels, quests, stories; AI scripts
                      +Models, terrains; materials, textures; noises, music, voices; video, cutscenes; spoken/written dialog; level maps, quests, story; AI scripts…
                  • @@ -71,38 +71,45 @@ models, terrains; materials, textures; audio, sound, music; video; spoken/writte

                    Planning Development Milestones

                    + +

                    + +Use an to outline what features you want and what components are needed. +

                    1. Pre-Alpha
                        -
                      1. Lay out the overall application flow using mock-ups or stock art. E.g. switching between intro screen / options screen / game screen.
                        +
                      2. Artwork: Test asset loading and saving with mock-ups and stock art.
                        +
                      3. +
                      4. Lay out the overall application flow, i.e. switching between intro / options / game screen, etc.
                      5. -
                      6. Get one typical level working. E.g. if it's a "Jump'n'Run", jumping and running must work before you can call it an Alpha.
                        +
                      7. Get one typical level working. E.g. if the game is a "Jump'n'Run", jumping and running must work before you can announce Alpha.
                    2. -
                    3. Alpha
                      +
                    4. Alpha Release
                        -
                      1. Run internal tests, debug, optimize (issue tracker).
                        +
                      2. Artwork: Replace all mock-ups with first drafts of real media and level maps.
                      3. -
                      4. Replace all mock-ups with first drafts of real media and levels.
                        +
                      5. Run alpha tests, track bugs, debug, optimize.
                      6. -
                      7. Feature Freeze: Avoid a bottomless pit of side effects causing new issues.
                        +
                      8. Declare before you announce Beta. This prevents a bottomless pit of new bugs.
                    5. -
                    6. Beta
                      +
                    7. Beta Release
                        -
                      1. Have external people review and "beta test" it (issue tracker).
                        +
                      2. Artwork: Fill in the final media and level maps.
                      3. -
                      4. Even out the kinks in the code – don't add any more new features.
                        +
                      5. Have external people review and "beta test" it (track bugs).
                      6. -
                      7. Fill in all final content.
                        +
                      8. Even out the kinks in code and gameplay – don't add any more new features.
                    8. Gamma, Delta = Release Candidates
                        -
                      1. Last chance to find a horrible bug.
                        +
                      2. Test the heck out of it. Last chance to find a horrible bug.
                    9. @@ -111,9 +118,9 @@ models, terrains; materials, textures; audio, sound, music; video; spoken/writte

                    -How you actually name or number these milestones is up to you. People use the words "milestone", Greek letters, version numbers, or combinations thereof. -Every milestone is made up of a development phase and a test phase. Here are some best practices: +How you name or number these stages is fully up to you. Development teams use the word milestone, Greek letters, version numbers, or combinations thereof. +Every milestone is made up of a development phase and a test phase. Here are some best practices:

                    @@ -126,25 +133,32 @@ Every milestone is made up of a development phase and a test phase. Here are som

                    Where to Start?

                    +

                    + +

                    Many game developers dream of creating their very own "MMORPG with full-physics, AI, post-rendering effects, multi-player networking, procedurally generated maps, and customizable characters". So why aren't there tons of MMORPGs out there? Even for large experienced game producers, the creation of such a complex game is time-intensive and failure-prone. How familiar are you with multi-threading, persistance, optimization, client-server synchonization, …? Unless your answer is "very!", then start with a single-player desktop game, and work your way up – just as the pros did when they started. +

                    +

                    +

                    You have a list of features that you want in game, but which one do you implement first? You will keep adding features to a project that grows more and more complex, how can you minimize the amount of rewriting required?

                      -
                    1. Start with implementing the most complex game feature first – the one that imposes most constraints on the structure of your project (for instance, networking.)
                      +
                    2. Make sure the game's high-level frame (screen switching, networking, loading/saving) is sound and solid.
                    3. -
                    4. Make sure the game's high-level frame (screen switching, networking, physics, loading/saving) is sound and solid before you implement low-level details of gameplay.
                      +
                    5. Start with implementing the most complex game feature first – the one that imposes most constraints on the structure of your project (for instance, networking, physics.)
                    6. -
                    7. Only add one larger feature at a time. If there are complex interactions (such as "networking + physics"), start with a small test case ("one cube") and work your way up, don't start with a whole scene.
                      +
                    8. Add only one larger feature at a time. If there are complex interactions (such as "networking + physics"), start with a small test case ("one cube") and work your way up, don't start with a whole scene.
                      +
                    9. +
                    10. Implement low-complexity details (audio and visual effects) last.
                    11. Test for side-effects on existing code before you add the next feature.

                    -Acknowledge whether you want a feature because it is necessary for gameplay, or simply because "everyone else has it". Successful high-performance games are the ones where someone made smart decisions what to keep and what to drop.
                    - -Consider this: Everybody wants "full physics, AI, post-rendering effects, and multi-player networking"… Make certain you truly understand what that requires (e.g. client-server synchonization)! Your goal should be to bring out the essence of your game idea, don't water down gameplay but attempting to make it "do everything, but better". +

                    Acknowledge whether you want a feature because it is necessary for gameplay, or simply because "everyone else has it". Your goal should be to bring out the essence of your game idea. Don't water down gameplay but attempting to make it "do everything, but better". Successful high-performance games are the ones where someone made smart decisions what to keep and what to drop. +

                    @@ -153,40 +167,54 @@ Acknowledge whether you want a feature because it is necessary for gameplay, or

                    -Typically, developers extend a custom base class off of jME3's com.jme3.app.SimpleApplication. For all your games you will want a certain basic frame – for example methods for loading and saving scenes, physics, networking, and multi-player logon screen, switching to settings screen, etc. Then you reuse (extend) your own generic game class and create a specific game, for example a racing game, or a space game, or a shooter.
                    +Extend your custom base class off of jME3's com.jme3.app.SimpleApplication. For all your games, you will want a customized basic framework: Methods for loading and saving scenes, screen switching (logon/start screen, options, game screen, etc), physics, networking, etc. Then you reuse (extend) your own generic game class when you create any specific game (a racing game, or a space game, a shooter, etc). +

                    + +

                    Follow these steps:

                      -
                    1. Create a generic game class for your own "game development business":
                      +
                    2. Create a generic library for your own "game development business":
                        -
                      1. Create a jME3-based project with all necessary JARs on the classpath.
                        +
                      2. Create a jME3-based project MyBaseGame with all necessary JARs on the classpath.
                      3. Create a class in this package and name it something like my.company.MyBaseGame.java.
                        -
                      4. -
                      5. Make MyBaseGame extend com.jme3.app.SimpleApplication.
                          +
                        1. Make MyBaseGame extend com.jme3.app.SimpleApplication.
                          +
                        2. Include generic assets (company logo, reusable GUI elements in your company style, etc) in the MyBaseGame's assets directory.
                        3. -
                        4. Implement generic features in the MyBaseGame class: Screen switching, GUI, game saving, etc.
                          +
                        5. Implement generic game features in the MyBaseGame class: GUI (start screen, highscore screen), screen switching and pausing, the in-game HUD, level loading, saving and loading games, AppSettings, the main() method, etc.
                      6. +
                      7. Build the project. You get a JAR file, your custom MyBaseGame.jar.
                        +
                    3. -
                    4. Create your actual game, e.g. a shooter:
                      +
                    5. Create your actual game, e.g. a zombie shooter:
                        -
                      1. Create a another JME3-based project with all necessary JME3 JARs on the classpath.
                        +
                      2. Create a second JME3-based project, MyZombieGame, with all necessary JME3 JARs on the classpath.
                      3. -
                      4. Create a package for the game, e.g. my.company.zombieshooter.MyGame.java.
                        +
                      5. Create a package for the game, e.g. my.company.zombieshooter.MyZombieGame.java.
                      6. -
                      7. Add your MyBaseGame.jar to the classpath of MyGame.java.
                        -
                      8. -
                      9. Make MyGame.java's main class extend MyBaseGame.
                        +
                      10. Add MyBaseGame.jar to the classpath of MyZombieGame. You can now re-use you custom generic game library.
                          -
                        1. The specific assets (scenes, models) of this game go into MyGame's own assets folder.
                          +
                        2. Make MyZombieGame.java extend your MyBaseGame class (which extends SimpleApplication).
                          +
                            +
                          • MyZombieGame.java has no main() method because it uses the inherited main() method.
                            +
                          • +
                          • MyZombieGame.java makes super calls and overrides the SimpleApplication methods it inherited:
                                public void simpleInitApp() { super.simpleInitApp(); }
                            +    public void simpleUpdate(float tpf) { super.simpleUpdate(tpf); }
                            +    public void simpleRender(RenderManager rm) { super.simpleRender(rm); }
                            +
                            +
                          • +
                          +
                        3. +
                        4. Place the specific assets (scenes, models) of this game go into MyZombieGame's own assets folder.
                        5. -
                        6. Now implement this specific game's mechanics and levels – without having to worry about logon&settings screens and all the other features that you already dealt with in MyBaseGame.
                          +
                        7. After the generic super calls, add the specific game code for this game. Now you can implement this specific game's mechanics and levels using controls and app states, without having to worry about logon&settings screens and all the other generic features that you already dealt with in MyBaseGame.
                      11. @@ -196,17 +224,35 @@ Follow these steps:
                    -

                    Store Custom Data in Spatials Using setUserData()

                    +

                    The Smart Way to Add Custom Methods and Fields to Nodes

                    -Game elements often carry custom data with them. For example, players have health, gold coins, an inventory, equipment, etc. jME3 lets you store custom Java objects in Spatials. This way, your custom data is accessible where ever the Spatial is accessible. Read the Spatial documentation to learn more about how to use the setUserData() method on Nodes and Geometries. +Game elements (Spatials such as Nodes and Geometrys) often carry custom fields and custom methods with them. For example, players have health, gold coins, an inventory, equipment, etc. You may have methods that modify the player state, such as addGold(), addHealth(), pickUpItem(), dropItem(), wieldItem(), etc. +

                    + +

                    +Anti-Pattern: In Java it's possible that you extend the Node class to create a custom Node class. But be aware not to get trapped by the following anti-pattern: You might try to create different character nodes with MyMobileNode extends Node and then MyNPC extends MyMobileNode. Then you might continue creating subclasses such as MyCityGuardNPC extends MyNPC and MyShopKeeperNPC extends MyNPC. What do you do now if you need a MyShopKeeperNPC that also fights, do you write a whole new MyFightingShopKeeperNPC class? Inheritance does not help you here. +

                    + +

                    +Also, extending a Node just to add custom fields to it is unneccesary, because you can store any custom Java objects in Spatials! This user data is accessible where ever the Spatial is accessible. Read the Spatial documentation to learn more about how to use the setUserData() method on Nodes and Geometries. +

                    + +

                    +In short: Don't extend Node to implement game mechanics of your entities. Instead:

                    +
                    -

                    Controls and AppStates -- The Smart Way to Implement Game Logic

                    +

                    The Smart Way to Implement Game Logic: Controls and AppStates

                    @@ -236,7 +282,7 @@ Move game behaviour into reusable classes of their own. In jME3 these resuable c

                  • Each AppState brings its own set of game states: You write code so that enabling and disabling an AppState activates and deactivates one particular set of class fields, GUI, spatials, input handlers, etc. This way you use AppStates to switch between e.g. an InGameState and a MainMenuState.
                  • -
                  • Examples: The integrated jBullet physics simulation, an overall artificial intelligence AppState that coordinates cooperating enemies, an in-game AppState that loads the scene and the HUD and activates the in-game input mappings, a main menu AppState that switches input handling (clicks are interprested differently than in game) and displays buttons and lets the user open highscore and settings screens, etc.
                    +
                  • Examples: The integrated jBullet physics simulation, an overall artificial intelligence AppState that coordinates cooperating enemies, an in-game AppState that loads the scene and the HUD and activates the in-game input mappings, a main menu AppState that switches input handling (clicks are interpreted differently than in game) and displays buttons and lets the user open highscore and settings screens, etc.
                  • @@ -268,7 +314,7 @@ Both Control and AppState automatically hook into the main update loop.

                    -Read more about Custom Controls and Application States here. +Read all about Custom Controls and Application States here.

                    @@ -292,13 +338,13 @@ Read more about CVS. +
                  • The jMonkeyEngine SDK supports Subversion, Mercurial, and CVS.
                    @@ -42,7 +42,7 @@ ant jar ant run

                    -Recommended Usage: Use the menu items or toolbar buttons in the jMonkeyPlatform to trigger clean, build, and run actions. +Recommended Usage: Use the menu items or toolbar buttons in the jMonkeyEngine SDK to trigger clean, build, and run actions.

                    @@ -55,7 +55,7 @@ Recommended Usage: Use the menu items or toolbar buttons in the jMonkeyPlatform To see the build script and the predefined tasks

                      -
                    1. Open your project in the jMonkeyPlatform if it isn't already open (File > Open Project…)
                      +
                    2. Open your project in the jMonkeyEngine SDK if it isn't already open (File > Open Project…)
                    3. Open the Files window (Window > Files)
                    4. @@ -86,8 +86,20 @@ The build script is a non-proprietary Apache Ant script. It will work out-of-the

                      Read the comments in build.xml, they explain how to override targets, or extend them, to customize the build process without breaking the existing functionality. +

                      + +

                      +Additionally, you can manually edit the *-build-impl.xml files that are created when you change the deployment settings: linuxlauncher-impl.xml, macapp-impl.xml, mobile-impl.xml, jnlp-impl.xml, etc. Note that if you deactivate and reactivate a deployment setting, these files are reset, so keep a copy of your changes. +

                      + +

                      +Don't edit the base build-impl.xml. +

                      + +

                      +

                      -

                      view online version

                      \ No newline at end of file +

                      view online version

                      \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development.html index 9f6b68c6a..c2aa7a5a6 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development.html @@ -1,17 +1,17 @@ -

                      Developing for jMonkeyPlatform

                      +

                      Developing for jMonkeyEngine SDK

                      -Note that all info is subject to change while jMP is still in alpha! +Note that all info is subject to change while jMonkeyEngine SDK is still in beta!

                      -In general, developing plugins for jMonkeyPlatform is not much different than creating plugins for the NetBeans Platform which in turn is not much different than creating Swing applications. You can use jMonkeyPlatform to develop plugins, be it for personal use or to contribute to the community. +In general, developing plugins for jMonkeyEngine SDK is not much different than creating plugins for the NetBeans Platform which in turn is not much different than creating Swing applications. You can use jMonkeyEngine SDK to develop plugins, be it for personal use or to contribute to the community.

                      -If you feel like you want to make an addition to jMonkeyPlatform dont hesitate to contact the jme team regardless of your knowledge in NetBeans platform development. For new plugins, the basic project creation and layout of the plugin can always be handled by a core developer and you can go on from there fleshing out the plugin. By using the Platform functions, your plugin feels more like a Platform application (global save button, file type support etc.). +If you feel like you want to make an addition to jMonkeyEngine SDK, don't hesitate to contact the jme team regardless of your knowledge in NetBeans platform development. For new plugins, the basic project creation and layout of the plugin can always be handled by a core developer and you can go on from there fleshing out the plugin. By using the Platform functions, your plugin feels more like a Platform application (global save button, file type support etc.).

                      @@ -27,7 +27,7 @@ If you feel like you want to make an addition to jMonkeyPlatform dont hesitate t -

                      Extending jMonkeyPlatform

                      +

                      Extending jMonkeyEngine SDK

                      • @@ -58,7 +58,7 @@ If you feel like you want to make an addition to jMonkeyPlatform dont hesitate t
                      • Although the scene can be accessed at any time via SceneApplication.getApplication() it is not recommended to modify the scene like that. Other plugins might be accessing the scene and updates will not be properly recognized. Use the sceneRequest object and the lookup of selected nodes and files to access things like the assetManager etc.
                      • -
                      • It became a standard in jMP to start the name of methods that execute directly on the OpenGL thread with "do" e.g "doMoveSpatial", this makes identifying threading issues easier.
                        +
                      • It became a standard in jMonkeyEngine SDK to start the name of methods that execute directly on the OpenGL thread with "do" e.g "doMoveSpatial", this makes identifying threading issues easier.
                      • The AssetManager of jme3 is threadsafe and can be used from any thread to load assets
                      • @@ -76,7 +76,7 @@ If you feel like you want to make an addition to jMonkeyPlatform dont hesitate t
                      -

                      Handy things in jMonkeyPlatform Core

                      +

                      Handy things in jMonkeyEngine SDK Core

                      • com.jme3.gde.core.scene.controller
                        @@ -111,4 +111,4 @@ Also check out this Essential NetBeans Platform Refcard: view online version

                        \ No newline at end of file +

                        view online version

                        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/extension_library.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/extension_library.html index c06101b1b..71310b2d2 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/extension_library.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/extension_library.html @@ -3,13 +3,13 @@

                        -This page describes how you can wrap any jar library into a plugin that a jMP user can download, install and then use the contained library in his own game projects. +This page describes how you can wrap any jar library into a plugin that a jMonkeyEngine SDK user can download, install and then use the contained library in his own game projects.


                        -Creating the plugin project (in jMP): +Creating the plugin project (in jMonkeyEngine SDK):

                        • Create a new Module Suite (or use an existing one)
                          @@ -39,7 +39,7 @@ Adding the library:
                        • Under "Module Development" select the "Java SE Library Descriptor" template and press "Next"
                        • -
                        • If you dont have the external library registered in jMP yet, click "Manage Libraries" and do the following:
                          +
                        • If you dont have the external library registered in the jMonkeyEngine SDK yet, click "Manage Libraries" and do the following:
                        -

                        view online version

                        \ No newline at end of file +

                        view online version

                        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/general.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/general.html index 3108395b0..864939a3f 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/general.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/general.html @@ -19,4 +19,4 @@ You will see a list of components you can add to your project. A wizard will gui

                        -

                        view online version

                        \ No newline at end of file +

                        view online version

                        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/model_loader.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/model_loader.html index eac4e0fcd..f54084024 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/model_loader.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/model_loader.html @@ -27,4 +27,4 @@ See also: -

                        view online version

                        \ No newline at end of file +

                        view online version

                        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/projects_assets.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/projects_assets.html index c040712ef..db1b4421c 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/projects_assets.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/projects_assets.html @@ -72,4 +72,4 @@ public class BlenderAssetManagerConfigurator implements AssetManagerConfigurator } -

                        view online version

                        \ No newline at end of file +

                        view online version

                        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/scene.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/scene.html index 0d271f3de..750848c29 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/scene.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/scene.html @@ -1,16 +1,10 @@ -

                        The Scene

                        +

                        jMonkeyEngine SDK -- The Scene

                        -To reduce system overhead the jMonkeyPlatform Core supplies one scene/jme3 application that is shared between plugins. Furthermore there's the "SceneExplorer" that shows a visual representation of the scenegraph and its objects properties across plugins. -

                        - -

                        -
                        - -Note: All info due to change until jMP is stable! +To reduce system overhead the jMonkeyEngine SDK Core supplies one scene/jme3 application that is shared between plugins. Furthermore there's the "SceneExplorer" that shows a visual representation of the scenegraph and its objects properties across plugins.

                        @@ -36,12 +30,10 @@ There are several ways for your plugin to interact with the Scene:

                        -In jMP, all objects are wrapped into NetBeans "Nodes" (different thing than jme Nodes!). Such nodes can have properties and icons and can be displayed and selected in the jMP UI. The SceneExplorer shows a tree of Nodes that wrap the Spatials of the current scene and allows manipulating their properties on selection. A jME "Spatial" is wrapped by a "JmeSpatial" node, for example. One advantage of these Nodes is that one can manipulate properties of Spatials directly from the AWT thread. +In the jMonkeyEngine SDK, all objects are wrapped into NetBeans "Nodes" (different thing than jme Nodes!). Such nodes can have properties and icons and can be displayed and selected in the jMonkeyEngine SDK UI. The SceneExplorer shows a tree of Nodes that wrap the Spatials of the current scene and allows manipulating their properties on selection. A jME "Spatial" is wrapped by a "JmeSpatial" node, for example. One advantage of these Nodes is that one can manipulate properties of Spatials directly from the AWT thread.

                        -
                        - To listen to the current selection, implement org.openide.util.LookupListener and register like this:

                        private final Result<JmeSpatial> result;
                        @@ -106,25 +98,21 @@ private void requestScene(){
                             //create the scene request
                             SceneRequest request=new SceneRequest(this, jmeNode, assetManager);
                             //request the scene
                        -    SceneApplication.getApplication().requestScene(request);
                        +    SceneApplication.getApplication().openScene(request);
                         }
                          
                        -//implements SceneListener (called from render thread)
                        -public void sceneRequested(SceneRequest request){
                        +//implements SceneListener (called from AWT thread)
                        +public void sceneOpened(SceneRequest request){
                             //check if its our request
                             if (request.getRequester() == this) {
                        -        //we now own the scene
                        +        //we now own the scene, any operations on the scene have to be done via Callables
                             }
                         }
                          
                        -public boolean sceneClose(SceneRequest request) {
                        +public void sceneClosed(SceneRequest request) {
                             if (request.getRequester() == this) {
                        -        //we have to close the scene, if we cannot, return false
                        -        if(isNotSaved()){
                        -            return false;
                        -        }
                        +        //we have to close the scene,  any operations on the scene have to be done via Callables
                             }
                        -    return true;
                         }
                        @@ -133,7 +121,7 @@ public boolean sceneClose(SceneRequest request) {

                        -jMP has a global undo/redo queue that activates the undo/redo buttons. To use it in your TopComponent, add the following method: +The jMonkeyEngine SDK has a global undo/redo queue that activates the undo/redo buttons. To use it in your TopComponent, add the following method:

                        @Override 
                        @@ -174,4 +162,4 @@ Note: Its important that you use the method addEdit(Object source, UndoableEdit
                         

                        -

                        view online version

                        \ No newline at end of file +

                        view online version

                        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/sceneexplorer.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/sceneexplorer.html index e867cbf25..bc87cebaf 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/sceneexplorer.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/sceneexplorer.html @@ -401,4 +401,4 @@ public class AddSkyboxAction extends AbstractNewSpatialWizardAction {

                        -

                        view online version

                        \ No newline at end of file +

                        view online version

                        \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/setup.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/setup.html index 063a3deff..7a899d832 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/setup.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/development/setup.html @@ -1,5 +1,5 @@ -

                        Creating a jMP plugin

                        +

                        Creating a jMonkeyEngine SDK plugin

                        @@ -9,7 +9,7 @@ Note that the creation of a Module Suite is only necessary if you want to upload

                        -

                        Using jMP for development (preferred)

                        +

                        Using jMonkeyEngine SDK for development (preferred)

                        • Install the "Netbeans Plugin Development", "NetBeans API Documentation" and "GUI Builder" plugins via Tools→Plugins
                          @@ -30,7 +30,7 @@ Note that the creation of a Module Suite is only necessary if you want to upload
                        • Press Finish
                        • -
                        • To use core jMP or jME3 functions, add "jMonkeyPlatfom Core" and "jMonkeyPlatform Core jME3" via "Module Properties→Library→Add Dependency"
                          +
                        • To use core SDK or jME3 functions, add "jMonkeyPlatfom Core" and "jMonkeyEngine SDK Core jME3" via "Module Properties→Library→Add Dependency"
                        • Write your plugin
                        • @@ -41,11 +41,11 @@ Note that the creation of a Module Suite is only necessary if you want to upload

                          Using NetBeans for development

                            -
                          • Download the jMP source from svn, then open and compile the project
                            +
                          • Download the jMonkeyEngine SDK source from svn, then open and compile the project
                          • Create a new "Module Suite" project (can be any name, this will be your local "collection" of plugins that you create)
                          • -
                          • In the Suites Properties, under "Libraries", press "Add Project" and select the jMP project folder.
                            +
                          • In the Suites Properties, under "Libraries", press "Add Project" and select the jMonkeyEngine SDK project folder.
                          • Open the suite, right-click the "Modules" folder and select "Add new.."
                          • @@ -61,7 +61,7 @@ Note that the creation of a Module Suite is only necessary if you want to upload
                          • Press Finish
                          • -
                          • To use core jMP or jME3 functions, add "jMonkeyPlatfom Core" and "jMonkeyPlatform Core jME3" via "Module Properties→Library→Add Dependency"
                            +
                          • To use core SDK or jME3 functions, add "jMonkeyPlatfom Core" and "jMonkeyEngine SDK Core jME3" via "Module Properties→Library→Add Dependency"
                          • Write your plugin
                          • @@ -69,11 +69,11 @@ Note that the creation of a Module Suite is only necessary if you want to upload
                          -

                          jMP Contributions Update Center

                          +

                          jMonkeyEngine SDK Contributions Update Center

                          -If you want your plugin to appear in the "jMP Contributions Update Center" so users can download, install and update it easily via the plugin manager, you can host your plugin in the contributions update center svn repository. The contributions update center is based on a googlecode project for contributed plugins which will be automatically compiled, version-labeled and added to the contributions update center like the core jMP plugins. +If you want your plugin to appear in the "jMonkeyEngine SDK Contributions Update Center" so users can download, install and update it easily via the plugin manager, you can host your plugin in the contributions update center svn repository. The contributions update center is based on a googlecode project for contributed plugins which will be automatically compiled, version-labeled and added to the contributions update center like the core jMonkeyEngine SDK plugins.

                          @@ -84,7 +84,7 @@ To add your plugin to the repository, do the following:

                          • Make sure the plugin is part of a "Module Suite" and that its located in the folder of the suite (this saves you from problems with the svn and local version not being configured the same)
                          • -
                          • In "Module Properties→Sources" set the "Source Level" to 1.5 if possible (jMP is compatible to Java 1.5)
                            +
                          • In "Module Properties→Sources" set the "Source Level" to 1.5 if possible (jMonkeyEngine SDK is compatible to Java 1.5)
                          • In "Module Properties→API Versioning" set a specification version for your plugin (like 0.8.1)
                          • @@ -115,4 +115,4 @@ And thats it, from now on each time you commit changes to your module it will be

                          -

                          view online version

                          \ No newline at end of file +

                          view online version

                          \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/filterexplorer.png b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/filterexplorer.png index 2be0173f600700e8814c9a3b6d0bac3b37931709..a03bb052a630885f9de162b9a18f1b64d39e91b4 100644 GIT binary patch literal 47466 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 diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/filters.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/filters.html index 2b721eb00..eb3d42795 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/filters.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/filters.html @@ -3,12 +3,12 @@

                          -The SDK allows you to create combinations of filters and preview them on a loaded scene. +The SDK lets you create a file storing combinations of filters. You can preview the filter settings on a loaded scene in the SDK. You can load them into your application (add them to the viewPort) to activate a preconfigured set of filters in one step.

                          -

                          Creating filters

                          +

                          Creating Filters

                          @@ -16,27 +16,63 @@ The SDK allows you to create To create a new filter:

                            -
                          • Select File→New File..
                            +
                          • In the Projects window, right-click Assets→Effects.
                          • -
                          • Then select Filter→Empty FilterPostProcessor File
                            +
                          • Select File→New File…
                          • -
                          • Double-click the created file to open it in the FilterExplorer.
                            +
                          • Select Filter→Empty FilterPostProcessor File in the New File Wizard.
                            +An empty filter file appears in the Assets→Effects directory.
                            +
                          • +
                          • Double-click the created file.
                            +The file opens in the FilterExplorer window.
                          -

                          Editing filters

                          +

                          Editing Filters

                          +
                          + +

                          + +To add filters or modify existing filters +

                          +
                            +
                          1. Double-click a j3f file to open it in the FilterExplorer window.
                            +
                          2. +
                          3. Right-click the j3f file's root node to add a filter.
                            +Added filters are listed under the filter's root node.
                            +
                          4. +
                          5. Open the Properties window and select a filter in the FilterExplorer. Configure filter options like intensity etc.
                            +
                          6. +
                          + +

                          + +View the filter in the SceneComposer to see what you are doing: +

                          + +
                          + +

                          Viewing Filters

                          -To see a loaded filter, you have to load some model or scene and press the "show filter" button in the OpenGL window. +

                          -You can add a new filter by right-clicking the filter root node. Select a filter to see its properties in the properties window. +To see a loaded filter

                          +
                            +
                          1. Open a model or scene in the SceneComposer.
                            +
                          2. +
                          3. Double-click a j3f file to open it in the FilterExplorer window.
                            +
                          4. +
                          5. Press the "show filter" button in the OpenGL window.
                            +
                          6. +
                          @@ -44,11 +80,11 @@ You can add a new filter by right-clicking the filter root node. Select a filter

                          -To load a filter in a game and add it to a viewport add the following to your games simpleInit() method or some other place: +To load a filter in a game (that is, to add it to your game's viewport), add the following lines to your game's simpleInit() method (or some other place):

                          FilterPostProcessor processor = (FilterPostProcessor) assetManager.loadAsset("Filters/MyFilter.j3f");
                           viewPort.addProcessor(processor);
                          -

                          view online version

                          \ No newline at end of file +

                          view online version

                          \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/jmonkeyplatform-sceneexplorer-add.jpg b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/jmonkeyplatform-sceneexplorer-add.jpg index 3884c1c2772a126a6976de89565aceb9e9ffaae0..1f3688a20892525803227ae993f91f165361e786 100644 GIT binary patch literal 97071 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 TA3yOQSMh)GSTs@o-ur(5Rtv)* literal 23678 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%0DRFap-UE|bJq709` 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 MzoWV$jQ?)}09IAJ(EtDd diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/material-editor.png b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/material-editor.png index b7b6d657bc46c38033ad3cc774bafeb58cf06402..7adc7c6a32c50ac91ee165f7fa5716759e0143bf 100644 GIT binary patch literal 55555 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 XG&(Ra<9)(f00000NkvXXu0mjf_4o22 literal 59530 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

                          opJ))uHcoanX9b8)!E9*)ea7bSqt1-xC6R>>Ny%JOw4LZ^=;v?FJDL|uSO9 zy5m7VN`Cvc~_z}1tuorA_}X)lz?S00Pt>_x|Dgcce9%MmJR zXsJ;bKT!daob=9Nu^PkY{66#$f(+yniq3^r!An%0}MYWshRKx=w9y>?Jd`{c80Ad7&nuf-x z&MB+1a&&2zGlJmd&en8os$yQcsQanU7bo=jmZRSp=zf@d|7P*v%haskd6ktKSOmQO zg`S>?d*Q@Jt>YXclmuiwd2E`H{S@e)FP9`Q+n08qXtt3PwfBRQTv$|u!S)RfGBGkT zGB8|p@cF7~YRdj2w?RiWujkl&H(IW!un?7^Fm*iw2Po{T(}@->O-)e3BJ$ogYr{Ig z5p#2Oy*O*RY8+f`Cp`yO)}PdJZb32dP_O3T=xAkm*}wC8$Tc;XXGSK!nVf;ajO69g z@v~>oZjlfwjoQ{~i~i_mDnjJ);73sQm6MnMf)ogVPDhfyz{o?h2nC^pMS)jpu~##5 z7c)57NRNyw&@NsV>*rdzo@P1OflquUoz-;ywYXRjzR+(}yjpuP9yoSY+p7i&Y6i9OM zJHE%F&~`xb{->ZI#Wa6>MjK*dW0S>Mh{Ju|IE=udU4M_wG`efR9+`DUf&LUQ#wcOo zd(aRWmf`Q;rfY5{%eH>C){!HA=(&g;d z_~z#!voh!@7dR(EHT7|f_n)>KtnpzJpnYnli|$--vPPxE$H$+Zo&w#$ zXTxSMFiN!UK#X#-v)dhNsfez7UmpUJiWDIJDIDB8yEr^Ntgf!UIxW2dMd?m#SH5z3 z1O-`WyH~RWb>zBBgEb0>7X#ZqPHzqL^Z-p!q57Z1NVdWKaviAFyj=F~d|Mz;n7B2H z$IEj@eBJl4w}05>43oVde7Tb)PFyr4YFW56RPcNEP!fCLKNLb?M?Umb%`nQ(<=! zA9!|qd*;>(pC*sre(KzlOf7qfp*mySyeFfOV_^h6J7>(&yf(Cb{y$ZdqVpjzq0{*< zp)pvU#9&gg%Lfnw9StCD#erN!`@ur@{f6Ok?kZaO;uo_rI%Z!?MeVtj)hg)yh3%)R zRHmjc6S(~Xu=noW3k?ae97s!!k9R(?(5^Hvfv@bJfSOB~8n96;_Zvt>2#7QA%cnW_ zj=ZihsH8`CHQQ-ujDqPI- z2SZ8Zzw`ldgRo7_?=1zJ1T_Z~iXRd;5T_9p&DE*HnZDw-#rL}PV&PDt&qo7gA_NK~ zI;zjF6W(JFF)7zk6c1dgv&B6x4U+y?&Jqtfzq?JGvHyJZ&Zg`FN0bGU_nOovFIutZ zC8;mOQI_7IGwSIWo&>(WiZB%l|{^wr3=G!B+ zLlMpn{Ee<%Ym^t5swyffoWD?0h36u|iGsb~e0j^Ks-j38 z;<%GVb=dZnW|#E%ZSb&qdioZ}?}3#h>fpfZq1+tY+@qGYr*CFszEiufMVJ5XdN);3 zP;vc60bM$`VVu_)IyMf^ATzJ{Tcz&8R@iX2NC9gulnR75;Hat_FiVjBjGv^8Iy9bY z&bs%$Tn0&1x1xB?ql5jq>#0uc##U>E6b04PUl(0n^XprOr`)s3SFaEmv0Z4jz1|4q zo1>l98_xS=y;Un^rRcZTNmo|j=aHJHqhzJP zS(9;e%kX?39$r5@dDfgw^Fma&vINJ;(bFM%)_CLGH%7&}D&_oV+8@|tcH zL14KKY(`K239`!;l~P#vz;)0kpZk4hNf*%ugDjACHjV91P$$uz8;6KD*EO6E(xIO~h7--r zO&Iyrm>4^KTRQB4Yw2jkCnRN$4xwb}>@TwK@be24XY)sEwMUvFD68qJiIi&$?bLvM z!Fl<6efaDx)tQ&uF0vzaW~xcv1r9GS&2dHm#5QxER| z*!WKPq<*qnYC-kM&$T~c->o%d96WxcYnx!4^hvTu^{mrm+T!2(nTO@dr?txJX3@Su z!$^ZK!ijcbU-iFX2xt|pAQQOx-AW>%-YVhR&ssth?SNS1e zQjq>jo8c`5p$vy8*=%%3&+#Xny!cMEA|kQ(!@X#h@EYhdDa=XP1out#)sB_7T`zke zk2jNPwVrZP$HQbP7fl5UN7son07j*-Cm(NC9yCFtZk}cP`&U!I2tsZjx5y-KY5vRB zCKAEIyCP_9^Z5S#UULCj(zG#K*ME|)=#T&tM30X;dV0tyUymyq<-q+pYdv75(A(+H z`J~`>+n1(IKt<;>V@?u^9+5m{p(brOBXFoiM3lc}O2Xn;OzNafYjPHe@@^)A`>Nj>hK>4`C5rp{H9~(LJW}uL9;ahLKT&OkW{#_q&~t z%nAfp#I2`zQ-a-H)hB506;wkltPHS&O8S`wkah~`aQUcJ%Go>aER?*w-FFg5$+VGa zX!n}S)&YB|mKz+L>7Ca6<}erxh}&GNgq}&a74B6i>V@#U8aB2rYYbh&X+@^9I3=$h zh=?l>M`_VOg9&_@@|Y2(jIf~6AfZ40DaZ3xYYP9pjkw$ur@in77 zYxKsqTVZSjl5#JiN{3V3DP6?o&NT-rb}kCF%I0FhuPsBU~K;(xwvg>v%RzRl_Kxs zfnsu}6-<~jG3io6j^qp*Ue~dJH7~DRmX^zVY5cLJ(fx^|(DJ*)hKkDe3^iU#;WgJd z=YDbI(Dbw;zIS-z(FerQ;gLG52dQX1Mg=9JO;O(Kxw%UB?8X^xxau(?dQil{*fE(5 z+8*HRC_s(x;byLG5adu1N-wdp?ll$CE1|WlY|g2OpgL(_4egN8m;VNI+SK7P^*U&} z1MsGG6Ft*3VJbqIzbTj+Vg! zE;4_3Ga%075o^@LO#K;vl3fOdhIln{rSlFNv%r!g<(#1H6x6F|-9%O?BkgD2t*ha( zEEPPt76Q?zp)P6#6nk<7PpwdTHs^m@?~t+^QHjHCt^9NH4kldvbP*hy@vxHGNs(Q2J%sSCRlw{vnv$AG+vCN+S&yrs4n5|JQ`GR;+;dAiU!NG2oc#*Ut zbrZiz%{?3JZt81yjKF=YB1J@_J_qTsCMGRa&?_w^7TEX$2~p8v0;R$eFaH!dIwnG< zQHNwXIvbx?bzkjHY)ErXtHuOD@`NF*O?4742CvQsRVGrX*0{&hu0VPjoTqGIbE@(A zeOk*55jN`Ph~5~KI=5-#cxID9@>a%-D^v2Wfe-!mo-utZzpAWl!Z-fSCvSZ&E+%G&qSL%29d`)Iy60d|%w^j&{m7w~pOLC*$z~4=&w8)|L=2TuW$sHUAGypy%$(fc z+Y7Yk4|-%&R8$a@Tzq_1kBWJEJ~|SrE4|l;=r|yu?WEFlqACz zjjirSPsaGRFH5=TIomJ}7e+?uKeCX&|63m~Qk7P=7HAJ!;f%{T&o zSgXSmE4J6&8GTPT(V)?-1Zd{j*eE=Jeb1R*^#Dj3@nmI2l4qNhV91s%^Sjb>Y)#+E$sqY*%2vr{-+(F1S*mj z2fzL@9F6&dAS=KZTT8V z@qK;2v;*asvf4XU^snPHlWgyNz0=WKI=2cMp6Dh5Bf*tb4H0qr+zw!!*4cWM2(-NZ zCoPBXS*OIvWs9V51908f&Fu(Cwhefb3`=QJ3pN=xpwwrX8>s4mA_h2Jun1ZxNxJf?TO)XnVE5bpVS<*G$*U*-;O|A##u?r}=d~>t z_Kh>-g*;eK_um zsVtS|k>LkO>jSTgf8bj}&jDCh#`dy*K^QKxIIeB<2o41Ren5CL@Nli?XZoHjCuREV z^#Itak+1n+vydxtGiLCOmIlho`fGM_L{x z3ujsQPl^Iq&1AXo6=hF|m7vAO!|-UXE@uGPN=h2#`rYV3K%@?N(NEUEoUr08U|PsW2RBL)fE4&|W5wFh$Xg?|5wf;NRPe9P!4d z-spb9OaTr;H$eJ7jC~?N4Pl%1`++=fNTa#SS4q(Ri zAnX(n7br8hugFb*oY;e|Ps<}rX zbWc5#SRY7_yhHTDs?-tDq)r|8Q=1lD>7v=U+T(#J8})>gCbp|9{VGi7YY0%rG#NTh zd4Z~%Nzu9-XaWyl2A;M@+oelZ3XoR-cK{Zq^|Evo(a!V1(YnTKmFWnKSF>+t6zzls z^L19Z(x?qnj9%FE<{)ILfHPu# zK8mmo9Ue=800(tUs1Z0*_{!0t0Le3uAA2T zU0tejqNLglpYn|B-(6}Twv);V^^eT+lCrIVSKllQ{-lYyNT3TT;v~ahu?YXr6lMrY zDR7nJ)H=WE+${pPtxPCf1+G#MMHh|Z1S@|3ojjuT^u`9QlQ=Q0YOs_&%JnJu*nqmJ z1vGgNnT%SH(hZ1M%n||v^b`PyXALrrmQfq)dPzN=$``E%`MXFp$U;>u8e#%%fAZf= z3ShL!I@JS|aE6#Cu;Kx4tMp&+sRX+oX~3Iq@_$}7a6o|(M~m7|aWG!Y;)j3K~~1au`L=?>dJ>s6a|c;qO83`=)@|Naj_ z39|e=msh@?uNX|0G+3J18^}k1i~^WQhsOk`%~9i;ay9 zl}w3}VPG8BH7nP7;sTDXx|Ws}kiG=}qyOy07(<8t^WcRV0{0%sBT5KLBY@5KSqi3| z;EgT?c4;x#OMw210t@AC7gH$Tt9-p(joX^A()x;ajyfY)2Ov*?dIp$rczcF|!SC;%1t1h+OXwLGP?l8# zCO&MB`9EJ@Iw;`)ki~HV8U&c$tE#K{q2T-g_?s(Ys?K?-%4QUhT#1>Pe3+3e;09%q zfHKg8gn*wIL|lOIBXiIlu#CWS3ea&V$f$1g9UB_D z)%;=MHj$n3xy}RRxp;pdOCf0;8=s3WY)hn{mt>`@Q`>!&%Te6QZ#<~pFj(6snd=v&A{>sA`M7Ez>>V2uCWIp_~vY@_O2`! z7Z(tQQAY;jK2=%`Qs2GX511?f_=CpfSu7(P=G9VX^vTIddU`sz+kvzLK>$eTtVZ@Rbo%$N!=yRm z^|@m{L35FxV_;dHdoV2@*bv3Z^8TYy>SD# z7yY!1-51tMbC*IR)5E(|UX+!UK}zE3*$(qzrFn6;shQd2qVImqIbTS~vU74AJv|>< zJ;4WsA@1RD6ZJk;WkRYht%~r_x>VDPgU6nDPrtuE)&EIqX`#R@G%A^wmZ5HJ(f7`W zp2{1D6N!(Hmpr?TBFNCfza&3@`u-{I?n0YW;v6C(A}{mu`f*1hVF8a9hd&(LC%BnI zhr;THAWpb!YkT+ZU8R@`l1CgGrX(4+_tu3n&%P^etu(H_ew<(`$bA;_s zJEEw_6Ll-+g~J`6Br#FZ5uYStSwaG*Ox?U6bek}V%T$_26HcG75$7PNh|_0qj!kg~ z4&fMxJm^v{H zbS+%cnL9^x#)cDhWsra*;bWtlDHbRkvl=@DVwGrHBu_ZB3g~{RTcVR69%7f2R(Uag zFhz3FYoSHwa0LI@jShb&$K#IrT#F2}UXIpt6^y!-IGFms-wuwFjMq{jERFQj618e` zPIZoS`pMV-)Zx!qYcuD)Tb#pW7kntcurxHWBRR)2HJYjG@!I{na#icUI&!Y9gt~ro z|Fp4~cWss&(Kz$#S1J9L;r&EkA-A#QaQBp>aps}nPrWjNG0){TGOx=`-Lc8xrR^*i zdZ>sqw^OEA`F06!{0l9Hw(_>^}B-^WBJH=Jxe2jof#zMdj5^J`v5|eZ_sFR=Cq+ z#H^}G^)YpD24#LL$L(mbxa=eRJC*cU3p(AnuB$odh3K`%T=m>v8zMvZ+5cb!{|j3& zF~;7Ba~~M=5@dn)Pet3cKEY;=7?Z_Ji-IZ|^2Y z?-cX|b{7vHIuvq#CHv=jaqfl1#Um*DsihOo#tM9v%A>G02&|SO(AwJCB4mK~dGPI= z-L=%pV}JkRcnQ7ACa=w=(y=DS#e}*yR=_38^@BKLniDBn~)|6R_N)Uc;_uIvA(?U`P5vezhrS0q@xPe@*TrnxM zzGa@jt=>4y3N;`*{jJQiiJ!#3;+zJWI=s-B4iu$(&D11Q9+HpB=-s5hj!ij&%`PD(KHt6D6ITKp@c+*h=>U1 z;%e@DHWW=Bek}E_YHdLc>Eo|iR<&b6vL1k!|Y8s!<6d?C)_coZUuxNb^W?=_uy zZG063zl+N>sZ5%ha?bDU!Qn10-rU)F9U{U|UA!GC9dH2N*#Gq>NiuOg*8OsFd)~F$ zCwy}A^YoPDV!~rW)=@t4KOhsuvBpQMlGR2ROkkk7D!u0(@!Pj=MItvU`}6YhT>K|Y z>gwundBAMA`J=R|qpuH_f`d2*9xLkEtCE~ePmkM3aze-T^XE^M)R=nW#Y*3jrcoH< zk)kx|Wg#T@Sv2VFy*r<*O@q%sF%ExVWNJ@R;Gw7ruASlgLk-4Z*-)q4F=79em4@{S zQ~{h(@8b>-Xg^pNLgAU2DM(VSYk|!E^61do>M9KljXXEdyzG}R@75EcT~tVhJi{LE z6FmdbEorn?nZe*QKp92FWV>!$O5c(dlZi5Swuf+xQEzAOa(V;OHzCtsfv2D%B5e#{ zN;gBTbujP4hY#gvYAB~G|MicJy%1>(SAB0UNl`8I;e*m@c8~OhU?Y?S!Mrbyytv$2 zY{z*}L8UcM__RDXVtLTkxJyD;`t<2jZ}}u>r8ER2jvlot-e#VC6%qzfQCv~5xT6w> zq6ABxM#2VX`hR@w*GnEy>a?Vva!7!RUsHeue*w}**lEF6TO^1O*E; z72+IEWv}I^r#m=1ht;T654e;VW2@I%x|W*`dQJRW3$k1Eni9pQ0&Iz+{Y4oW9;>S> zA+2uOGeCp5MDBSED%|vRN`57Ric;&%k($Ga-)I_aluoI%N!Gimr|*cRixGf4q0n_m zrMXH)?39hd2%gI?_Oz#btHmuJ>|-cFstsZ7y9arhauI#Bw((4Jvc zV`N|`Gd-*;LKmE(!1_@C&rPEX=Yo9cl2iy(y%g)OcxeP5jC)-g3ARG-k`LYB;yNTY zb8~a84MmDq$U4Rusl3RQo~9fP(n~EUC`d^mi=qp0EZfG$Z**XI*4xpPG&-TZw9<);U*0|Y z!hJDLiu0_x`X_vcbBqE2`yAr6_OW%k3I&F<-OL&C8#~x9?fCH0pZq^uw8J^` zdW{dfJ;&sW{qGT17V=1wIHf8Z{L5>fXwW}-{dtWSWvMR)UmNv1_m;#vwJm3mtJhEH z@n?LT^V&zCy}NH+H{dMKz@B;~L-Kk{Yh5W3DF3qB%+5);#BtL0y}b~>O3}Hy^3m$V z*&jo5pUys4E59Ii$I1wcL;9*QVm%yxryk1uS_?AikQ4D-lf@!Ooxb9`1m}sjQ)*8H z&O8pd<2I5T>dd2g$m5Yj$I|(})FInHvsBaWAFt$f3BoPQar4CVGTq(~7gKre&T-F! zTY;Q20ujRyo+A#!Qd~w6LFLZq z%K2`Mvt-m>8e@)*4ue7&Hysw;h^pG6XBiKXC+|UtBmYF{0BkSXaU&)lWvDXuMShfk zww3O+#h^gWU0L$e)Nt)#wrI+4{|oxgr+7NPW+&h5tyg(`V5Xg- zEoC`Cm@#WU?JK-o(>sI1U>LBuw!;vC4Sp~reBKGgmt6jSJz#TkmNKhl?JJ*No{ zWSQx!6Bpr*J~>L`n1Z(YrCEi+#!k&x%Va;a0VLIJa&o}J7@&Ows_+AU`*3n)@W^dK zn(&v=c`0dWcP>CpbioMmN|e2Jkd>CWvrLyZn2dkh5?ey1nqGzjU>AEi;d#V4;k1rX z_kp)yFtot7Ay!vdAi`Q%x%OK{@kwf29wO`y>~=%BjC7-Z|9@tsJ+Fi#IvoAiXX}q1 zJ?fLBBltk15g8-}msOtGsl`1%Gfdvd$59R;vH*)RE!2q01Yjx#xuoyV?XW+QJ?jIraLcTxepL1E^O@tNd)(t4d(S5 z+HRplOBYO5LUB17cL#dw{SROb#hbiX?zo>Lbcc#>NRrN6FfT843j-*M2MxcFF82F- zJWkLg5?`>?MWhPSjFtCa^^8#xKF%3FOr_l>DY*#fcUN)udU=yS6BRRqQ>?&6k>Azp zBOPe4AYcts;R_|WszC;gpV5?fOed?Y_A|-&P!G5r7N#A+t`?y!4Bydy7=$Xw!k!?6BfqPH-YapmeJRP|>_^86uXDrF@d^_`qjc|(4k z0|Ns;e}0)?uc--a8U+Oq7_OJqR*5t>9Pjv!_XQm6?Z;4$0}?-WthBniIyJR++_P2E z%+Rp&KabAs+lVyTXl^E`i~+Gh=1;lztTj@M+Qu1f*A1T9gwp|VFm$oi%fpczVdxrw zyU@l;{aac>eFFel?wR(JWFQXD=X^v=%Wx#RdV0RDs#1`XtH{r1?v17hszEt|-p@=| zS6o6Ot#bm6Qy}Y0Xbr6kpPslO%^hv>${gLT&K-~Cl z0W%>yGEcP?;&F?^Le@?kVhP7G!1W*b5oOo?#6-$ES6+gv>@%5rTZ{Ptui*MekKJPb z&UJ`lnXOH-ueDVr*7nAY9;m#4sKKzerBvPLtQfHAcXd)Pzccav{n?KEn;n+oBF3-B zAWcmWIRsU@-~6{@wil&2&tluj`TiaI{F#&_*kbPsNQnF9@(^;CAREQC1Qo^hwB_0# z%)_%Vu?=jlxtNH=y?_56WnWvCcF*LSfsLu_16!N_koVJbLPbxY-VL>sgOk%kJ0Bp2 z+K<~N7JqbhA~`Vw^v|0&25}<*hprF!!`@I~nr9okQ|-Q07pYuaSWxBHi~Oh(`wM`Y zN@~HkOILu596s#q;Lu%i#Za6>K-0Z5ua66%j^#!oOaB74_U3jZ#K#|KoU5r(vavad zqQSr*u5;pwlM{Bs!@8jlZhkldL`8S8QO9dtO42!fj8=J2O^^3LMCKSgC2M|8YdEwn#s!g2Aq4aSZR7EC zMaRz_omF1mZ7+Gr*0$z+0aS@3BgnJs{qgvjz!sq|F*irhn~4bfAyH90S~Tl#9C6C- z(`2#M1(?C`azR{VR=yf&tJuxiNL1fQ3|j<22+}74hsX{2BwgW!E}Q7HfQ0cL0Lieb z0UiX?cmBL5^5X7LAPWj#Gwx62LLvE)V==0RX8uSLd-+u>%nIg|o2zZfsNh#NHUpM# z2f!Xtk6pqMcCpH@yq;*a`x5XogoYJ~MBlsDDp`qMKi_}y3anmWJdoJuTe)d}b@E@; z)`@#Wl&T1`k$py+ink2t1vb+y?1<$dsQUp=D*o#&hD^6w%yYkmtp#kkNOA(E4(6Sa2c>AC8#C>GoROw366U}*(4Sp} z)j$gw89U$_L*Ny&;(D{K1a%0xW~@%K?6aZIt`&VWAwg*`NOqv!@=r>+9(m$luLrci!0Hs&x|;xc&le|e{N1Lw9Mp57x22`fqw{-K zvac))U1S=-I*71uOkYK2Y|&3AoE#!`Pi1^sN8G6?YHcOpe?6twj@J;dzO@lh<@$t| zPV&vdg&2uhw=YiNw@;FGEU;rW0@c6IcSJM^nE@xhH+5#x7~_T24H>=l1gjN#_!a@c zJ#G#hKcfRT*U&pnpvx3L+>&xTsM+MJd4Dg-f-- zDaFAT;3H0N_Q;R+l2rhOq@<*fsqB7l)F-QLWuZ-H7b~mhwQI^+(lL304>Y@U5YB?k zvbj0;;%<4U(NPzmrGf>gNW{dNG%_VADnoR-E-KW@U@~m!EccK6&dMq~qh`@yA?}+QvJ8jq0LKw_ClIzTV`CNW&syLa!#Q+n}Y?8d;F`L%0{xO!mC{CcS||K?&Y znp|M=9UatWX9=O`QnofKw-EH{|0b23kAb2aja#qtKX`=?J>rLA+2+=I z@)qDfI_-xzVJ~a~o_C)w@G-y16+9;%FGfo<4d+ z9eJNb*ZMw75@>*=AIDBJD|i`Kt^latx0;x5Hn+6YZhxO1t*}}{$&42Whal8;Q5o@&U=ulnLO z;rb>(Z2~z+?z?yEaB6kEcG&q>hyT8Yo}L~8Ujc)QiY~7B`Bqkymjiq%DJ_9ps^%Bq zY4m5vD@BDzT1qHUUKvn2(p`+R(rq61RH)v9?av3i1Qzu0>@vJ5riTsTQBxU%EeBgO zm{&TL!9-4+q<;1w2F!~!|GKw zY^b}phv+np5L8n3k@dHeeC5#7i{BHosOp`VKhDLJ)i@4eL_FM*)RKD<^qKM5t}zbj zjEE<+JAdw=DPqY@IrtF5;> zkD6$!GOD(D3bRVYYl%8f?(Xh5JDNt%9kP^& z7mjdrafz-cf+;}2DHl_*h>4LAY_>Sz5%?E?SC2WDhNP%j3)l&2RqsQ}*(A zu7u2hwVr{Sph$7hA^ZZTL5=T^{(c1siP+?1TzHg0fql+U#duZhP1+k8|+4~dC2 zefi>E(O0015-7zbWcD$!j8x4rpIFcZR&(>FLcJS)m{)~aR+~?y`3ssDIheNLDTD<} zGq$~_XAk|YB;P;TknI3Wf&v9=FTZnp0`r~epx0uYQNOV<=U4n-QNwi%T^7=3x$Xg# z3BC#F0>;SY3#&$w~n?O0tH2N?tccdL5q-xeNhpEJ+y-EQTk z&ZT?q?gYxROvF_RklwcI*8A0Su^He*akikmpE+Z(s?ST%xK^rN!eKVcVg1CqkR#?F zPIVL!XX7RIi-|G6sKO3Id@gU(J>duxDiJ#bI%)p~&)yZ#R3;e3O-@hqaB)#dX~9qQ zH2R}8pgwdR_XX%$&4b=D|JoLOTq8C#vSUHMppNRJ>^jvWF%^xoY2?Jy{P%&Q-k!TK z!tr8yuqW^qjkN?{w9HGjp>UA&!rf)`HB~#TO;fm1j%7J;=Kb8A-%DIXI9X&P=R!;!4rXAK$_Fa}K<8lsahIcC zB}X`E##kTCGd(epc=WP1n%t2$@wq2xnZj=0hU+l3bHWgQ@L3vbah||~%X6b%o}S1@ zCOrq)$qtGN(3y9JbSJe_WP%?Z`8#o5PC$2WI_t@KnHvjiQMVnV&h_kH+}qy6_xD^S zi+}si%zlOMZ%=&JKbA)^mhNdtbjs-BaJE{dV5kf1@c8oZK=zMc?QVur31%XQV4N&9gX^m-6I{k6ExlGLzViI$&ZiS z6KQN70srM#_u*4lGD@|DYh583Z<=K0Wg3gb3v$-=h^u6GKO6cH>cm0CtP+Xi{k192 zbEYn&9}+Oa=mH}E)P2s$Mj|eOoU{*lvfGvZT;@2%_|R8=%F;CcvEoETr>V2@+uq${ z?rYPhxODT>Bt1V8O~!^PU*zSX9_mMp^-5Hlt&_O#+KTAT3jW?^JDz+6BGuoBT`z2Y zP%XK4*k^P#Av+-@fIkOX=S_GQh304Y}ZFgxXiX zQW!PmcPF>y{VCnk`E@zzQ)SddyiIG}(qvt|k$I+DwAE9C5l4-txKid$n^W4vq-|b% z^&UGEzB{YS3U(kP>x-n)5Q7zqVa4yv5ALS4k9_AM;?fd*K8)zBc#_wN>#@$Gy7KTi zcXT#8;A}}`h8r_wz1uw^$a5j-cYWtMBsnhg{-ymJLCYuQJQ9%P)*U|~!Xv*JsL1?| zvpvi7<`Gk$&dh5c#9tN_%|*~mNh+L+u{+Me0B`^-5ApB!Y-&B$4wM;udN?z2GKl{{ z&hmqXQ2oEe?8}Fb&1NMeT{wA^!v}jUBkqwMiYBx0~f+z#0@n5f4u?)90@||C$s^_FWu*i4v78os-f}F|inCdRx zW?FeM?u6@L4J`MKfX~<=BY{senAa?YL-PcsHrrqT?Fu6=J$bOj&Ty);ZL}yq{1q(V z`jq4Zr4O6qLjecSFC-0?>uu#nDF()`-c(jTv*KW=LxmZ4*lhI(g^|l1a1zqay~x#s z19Df@4E2B6!3Azab*_4ZDZc@xE9IiZ`A;A(>#})>h6`@LL3M`4b{Nbxu4!JY=rexh z1#2KGcZlFnKu9HiJM;K3dJXv|m+m4|=IKZ)>n>_PibKZ(6&-{WuyX_J0>Fhuhp`F9 zdU}QaYhIzv(B1{clhQ^&E+IZwOw0wP9l~$q4bf@gL^6Y16F&-#ywY*-$~eRa*82Yi za_1Km%t*Hp%@hSR|KLDS@P7-L?onVABqSX6V{|!X0MO;kY9*)S^LDr#mysd;93;ws z^#=P~J-~bppk)Af>i0u4C=jnaQ8avMbVOG6ZIV$C`iHVTqKDWy-T-w;|YhG(d zE)PYJtIX5KkA)(vp)dyZ@{9U`K*RLEll7H&WGJeZcZ1qROQDGLQ)D@Vt-#e7%!{HC zsR<4cfHK`iv}=!6^!0R9I+ACrfe$&V?7ByU{AI!S#IMaVxl<1$orUuF;t15~of93Y zd!w%IfTR9#)xvWPf!6+h=Rza=+4BJ^@E2byt{dXGPUC(r(B{YX7|PR{>h)UPFE zCVLNuquqX{7{LAhSB;M`ArzisL~*m%iQl;s@`Q!fyRYQRt^$R|BCc>%-ZCZ?r|I|K z8GZ91thPbmG7vN|iyM>3W9Nxd_i%RyTiMgogNmd1QENli?8UkZ|Kd_kH8eGyq8%9> zZ7ed?)dfXrOPM142k;fXISz1q`5MuSMn*5%#*qPUpYXkjl*-TxX%or_QgHWSv!Bh) z;vT=Xkf-cbfr7Phew~yk5g8e@wT({_O%x7)+Vv0t8qoMCB4X}XAsre(9xkr-iACB} z6uc-OpM)a3f9gA%h;STe{6dl%1Ii+kfmH)6QF(5Xxq6et21-e7!0o*E^tt9tw-RxC zseTqGmY5SCEyX3Jr77+w)eSvS45&&t!*uvuwDL2LlB2Fq6BPAFzJ^*TiyVl+GHd+$ zHT0b~bY65Re}hcgU*C!q039waUQ+~gwCdY=(@tkQhMj6|C@is@b8>u4|J1)8`c+J( z+x@qvRE$8&8>%39pIb{V<^r|8`>&Ca?B{jwS@^@P$bB{xTZ}HN*?jdWc&=)bcu1LG z*+f_R;!zNBo!LVF5R(so8GI?Tawu>IVGKO zZT31@_FQ~ihvebNrh9Z(`tsNy^rPnI%FR3%{pJ>fRx+HF^}#jir5dCG%wAB z*c>>M_x6(A=U#nbNj6TF@$$BSACW~i?cv?NGi|`Yx4pSF~IZ9lQrsKfD3Ibj`rRjgoO`CdO_jH1CWz>bAAXOBgfluF7d4w%VvZ~OjEu8*g+?2u~*ElX&OfF>Fp?r3y%lxnJadOK7}cIqEL z45HMJVpD)_kY8v%iNYA$#HP6*N z)zo{~Ljpp)%1xnsA*Je zk<#J#?epg@NRxh+TyaT#9muQ>d5degayy*U=wiW_g3Q#u9ws@(ZhDQ9##SGhGjDq) zZxW-9y{)JKpv@MpdR}x3qSBu|Jr!?}Tyq(LPyYTJXkK8G?)N4#CO2*K6B%+{u47ho za(3>o4p6LjLw_%c0lmGZ9AZXs*UC-dPf(YL?|tXvfoUp0 zab@nIi?<5zLWC**#2q4A8-QOXml z!mRW(A;^^HjLLagb^Yzp47buj&K&|^d7<0_kAQIg~ki8AVGJE5rbx(lBy$SRA32`bZ`(Vh#ct0aze`s>_&WU&i!hr;e*Vi zdbJ}T3JtV23EzHKZ}e1SQ~?xwoKcrNNxxoaWPG?(j8KBcqNf@H-bvufCpz;x?ImIO z_jAiX8Zvl|;)QNtB!*2`%JOOOPbMX)9~At3WHA)v;>1Rbn-jTvD!&;UX?aM zS%bZb)jzXHaa;#N^od2F86u58Czk-A8ymmH^@b05$<7WBIoj$8?gi48RkDsxOgt1Z z3^D2O{0c9R4tCe@l!k!5g+(+W*#AKLDZPhK8oWt>#;6GDvXhlk)h$}{EDg`*Y4fqRpNv2rlq4^ zEN!l1S7(RJ6Uj(6utazzo;YEWc|RgI_BAsTQ;|sG2UQEvGw*uVa!oH{?@=sF02`L>ba*(GYOoZrJGHcaZFzrlEjCH97x@D0R4s z+6D%qiDeD82M-(|-^pcrFF3Mx+phO=KvdLtZD*B9{Ggw{C7bR^%q)?CL~(4)9#6#0 z?MP@WX_^SdOZN*ro{y+O38C!`g^IipN~?# zz4%C!`Mg|8aPUi&Qd6lM;V%#n=zDM~YZzm8l-b0$#7{z@(G6YCX*6q_{!?-wgYXW4 zB1cm*wuUO0gdi7aoNM|(bZeea>L-(YV?o^$m_WmH6ZiYh!v=KomIq*tHw zBlln1n_H!qvk1A;#rrOs%lp{Ms&4GRsDJ&?&i2tc_KM9_VU1dXbnPPj+lOBy9~u6R zdyT&*6SmJuq;-tF#KUpLa>$Sv-~Q>BPyh5k6Ol`y3P+^J+Q$fBMk80DI7%E>vh)6@_P{3WY)-&nVLH0y;RO#m#sqlHW?&beNudsUo@Nq`n zyL*>FHRN7ia~aHH?@tEbX6qPf1s#ms0A%Ms!*4=!jdMR`C_bA&` z_2U#<-#s>0)f4AB$NGdyJQOjf94cslVl#LpQH$lhkEtT$Jsx2V77Q)eT4|=`+t0<6 z_ziia$M5Y_1D|QZsdPk(d(T>s$LXxLkJd*bKU$aeoI_?nm`J1G11|YP+|ei@&=kPP zrKd;U=q=TC#;uY-^I!}(WVeD^bbmzwq>p!(No>W}wqJYYD?%*N=Uh%{8- zmRiYAC|UTZ>t=GzJXVhQor;0I?V9Xlz(!|)D2C91y+g8%Km$-zkEl`B6;6+?N0ola zKLkmwrZ?zIkr{9;A$ag51m_@7|81^K50tuC$a9N{h)^~1EpsS^8O7Pv_c7s7VhW2s z>vLeSkXxCQyN_U+$ab-J;-CV&`Mq}pF7Ke?gP$*U$d!Z38eS|+py8dN52Kkm64(Sw z1!8Z&OFj)cb<$z*46kOaK`xqIrz=XOK+a%Z~TrvUc^#Ss*m{Bsz6KJXI6A-aXGOByZ_JI|@{T)C2zwo!X`HR=N}w~%rLL|S&BfI0AQ3xK{ck15PXL855qf6hs!QjG_vNCUAtO3h)JkU5&E5j)02YE~Y zc-RgU+=hm*h%85fT7C8HI}`D`4A&=dih92HCca?3EgNUo=bL!syqtiL;4;NCLOf|5 zV&_WWq9zA=#H?$_gw*bc=(fAd>IAg$w%a0IK`EJ@W5w-814MDTUB)Tck)a#hVcB*gH81(8+T~B`Nr?lI#L*ZnFq6L*cLp zdn>nspHXZEI&siLa6rm(FmNAtxApW~$hFwWG05FdTLcd;mK>N(62(b)|DV+m6hCSE z^56IVlbwY#rBST%2r1X}hE}ucp%aDG8 zJ3P+-pJD|n&BZ?R$t0T<=W4MkV{98ZC$LQb$AH;U1O*OE8*cw7{x@7GNycxvpq|(= zvDj1Ul8k47nOtZbU~@$wgol0ROd~$-kXLfkF8W(QI;fP%(smeCX~#=EN1=}J(RXm%aprbCHc zXe4r9V|il}jR}0QiQl{iYsjBz!*Qio-0kjesYiJ(m>;zxuUJld=BY09;>=9rWg55lnnu_95^C1`sR|d+TPxhkEImve_jPm_C z)U|N2<5d2UZ!ys9>IK{jI1C!8Z@Uh|Eo=du82B>tLTfwzByY%bvM}E4znN`%db1Ec z(5$ZE{I6Pll#f;vefV|?u`?1)^B~E6{~LX}G8n=P#JA7+x|P-a7JK6&+Xg^ieBzZU z1>!0{!$m??UQWZA%U;fL6y6>}omBv1SX4tqH6P(9#Qka`WGmlt35+O&1q1cxZ4P z?d<^@-9#UVIb$eRMcA=OctUq;7Jh@vIpo~AI9Cr5WU z!g#EmwUg#X2T=$M?BT<%$t4n}i91{PV>em-EG|ffI?GX-(qfSw5KO(jTCoDQ>X$hL zxtI_IH3`BIW@u3Ss1>j*kp?XhkDRh>j)x~=w8%aw0)T4B5dK1Hs3qc8*VcyAUBBIW zt}V|EZcRWF{mr9esaR+@V}T5yLH5SZrV9@AcbDWO#jT@R=Y32ea@+Zpb(nyrQKtFN zfnk=$qF9mb!DK7D2`XDN%v*!*Sin>&D#UA({WC*;!f!W;#@=pEEYbzp*p? z117xwM{*Xaq&AZ-({~H4XYi44si~n&;$k9Y31GI)#y9x==h4oiGSSq>Xgwhzp?&+( z(bX<(m#*kTSo#ml9fshb66SDH`Y1B!p=)APCe$2nM)2>^zhklQ??R4^uU2AwkH{`! zM8CO>twVKC5P&LqZjI;X6mF2K2Rm|AIB42vUO1o2$<2KJOh}VXA!wGF-^y zBTeQ*v;pLKJl=!kNu#KD0i$o6{4)voNvVs00y)$jj-rUS78M0`3aH7s)Fi#7h7%(h zA@&!$SVSdBpF$&y-zCM0UxJ3t*4Fd-^*YXLP&<-tO?)V5tlkgd_>7lyXoa(rS{Z*F zetzCNXk0JGLHd>22O%QOwr&32ERWVB9=Senf)D}v-;_~vOYYl1zgyCb4y?;^y+Ez^u zlg}R|Cdx@jV3J{(eam~KJVM(DPt4a5cOUsAI0$w}eX3qbtj6Xz?l!CnG68^g-H(f1me72d-;@Z#{Z+XPx-tMk#UenEUr(N`tg(4<{$qZj#@e zrXDL+4vsl}Q`5V|Wjqt~%vdy_WU$i2@o@ojcU3boGv=@LzD-I>+GXL_GW{=Lb3VD= zt#{lLTY;lwcUS{drOF=AxS?q$nT0vRjwF7=MQ`EnUpX+H|MI0|;x|HsxU4MwVy&AW zYAl4G8^Aj<-=v5GA4)rjF=u960fpjaNZ3VmPQ3b$2$W9zCV5uw*>@a~D4X&-ft{d| z#47<+dpwpO(X}6~m1$p@RV+dJ3+*8u3`#r7-+Kt!F|Bm>tSk_UdW4}7g8)z?8z8J2 z0S!_L02pg#sctk*q|u}~aMJ!kru%>T0xDffWwH#&sh{dKue9GMTk1WySNBi9Y=Q*n`|9eFMs#L55~>%v?Hj=Ll!#aj^idyPJ@x<|AOmF>CyYCmGr0 zyPB%X=N(reA(R2=+dlbq(cT)tE!|FG<$V*2DxS0qvxP=Z5bHKeq>NNqQ#GhsHxxPL zY;w9c1%)bAE895UJ)}OH+3%hHeZcYQwwF5ki%yPIamK$pUh?idKR!3n@#(^Y**=wc zszQizVQK)XkYv0+m64|WA6;@@kXlt$-za~k#CPEMT@ud=u=#nCI@ z{Df~XPO`m&`!-SLm&u6Frn-qlN4?|i`c+4rWPCfA3pKkQTh zi%!sy{lLM-Jz=@6xST^}T0Ke>GM*2&TXrvv)0uK}{4;2>?8vHy2D9tfSwFX*7dDoZ zpH03pn0S_VhVwdE!S*t4J)OvrtG9BL%iGvAiQflhvjza75X*WD8XZz5?o1$e=<55c z?93hf?u{p{TFZ9V{9aFR%)p-!e9;i$%*=b9Ou{+y!S%iqWE&K!SF{QqmmetP%GzGF zp1(8fYYN@eTjQ7WR5`^JUs#^dH{T68vy)0V@Zy&5Pl7nROtAjswVjf;1T;a1*3Y7t zH#mPjBU9`Q<6XElo7HoESzmw4r??o%46%GP*YUJVX7BhF6z+3}S_Fk0TGHE;4<&Gn z)Iz*ulJw_Bir+&^=BV=27o{~64E)xEoZ{s<2QQVGF-BL7yt`id$HtO_q^Ppo-D)pM z_(dJE|25yceY9BunmG@Hb(o(-Vo;2Q#X<{*vn0DR6EnZ21bbxA&T7==V$~G|7Zr-h zcq+qBy}d#hSKcwmMAJ>s-|Gxr1}b=x@ov+=b^iww8j2u<1-!DT=6?Dez&-+ZYIm`I zhG0CD;20x329+7Movj3&GIx>4=;&x?dwbx%!(moXl@8vC{Iq_l=GE)!YKzzmu-qn3 zs5XA^v(g7e4x?avXFd&ol&9=oWdayujQWL@ocbP-zy+gP>N7X4ZJf{1R?gfa%@VD( zB-{2D>9)}3K7RO+HHJ%6zaSh8H2ds)FL5bIO_(M2S-E(`3oR4#a6?QwJxF)qGk`A%jSr`P3 zR2?N!phKM16Iha!8A!=&cpVo0iyb(XfS)7hnlx-;#2p@w|BpJj+=Pkdt!3+<8(R6ho;p}=?Al#9?3e6PCn1HeD0B9E@KYxPnNTHpx ztPRHJlH`Omu?~Z8NHHIjZ(?!ef{Z^D5vw5pAt96pq{JNrpx{4}G?MoYKUIvV;`!ak4LEk>pmDd)FAL(nywj-%%p}i~kRCOgg-}3Q`4#%y@fz7KZFrcGgSDQtS`mK~UbS)6Wc_2d>oEEdf za!TWfd$}pJ(6p(b1uW;HRQcgbMCQo11Su4;9AS$K3t%N+y+NncB3bF&CySvh+R0Sg z3d*PheorWd5Q4-1O*ysR;OG==rL-=$MMN>z**4i{+WDQ0MSehf@OR;~{bVT)R|-3Y zdB-8TU`$#jK_?JELR>1&0nsw3&ms}TY*Pf#J$%_Y0rp}K0}Y#+n=E|E?L)53k{h5k zp-`4Ob_^kNF!uW6ri?jEdm0k|ZBK(}^L2$;BR@h-q(~<=Z$b@vqOWfQ3)da$E*<&V z52$tUuwdBK)NCMi$6e=HGm8ifkNm$V>IBcPdv#_&*> z_4C<=p)WyZ|Bp)`SYIyf!Kj`-XJ(R|Kkzs7JaAvd$7_+gJd;tVZ{$FY2qwg zPqrw-LCi8Tj{N!s$RIN_6C;g45v2yg!yArA#(#rf~^#6uu9UW#3%L^CSGHOzV>1B7n(C-*DyYn-Qis#_< zXX@!eGwhO=cwyjN6!;8}E4e=}Rj1OAvl=So%=%4AmocQt@@83^XaKb(2NL~8zs9G3 z%HPyc7(PPD%z2a}MP z!m##4)z{J`FuCBg$iaguHpd-P2VU%``}1gKr$Mo6)EBeIoNZJ+=Y=m$9xHG|%-);F zu5vMTxuyx(mj}nMztT!OLOBhmugmDk3&q=PV{~uJF9uJ@Q=S|(tFYN>Cx`eV-kb35 z0DoosmBZDWb5{;`?#SJrm87STKrORKA@b3TZ}F?yp$BBaybHb?lYabK@38?>geuw? zV?OOy`e%@Bk?+;rr;>5qh3FL)okhW*aeZ~Njf44fx?(N0gW=+h-JR>}4!t`vC@ZGa zGt@?oMoySYKL0rPhT{B7!+o4*i2Y<<`+YTJ$oS*0#JLs+nT-_{Dn1gL2oo{uOddI~ zxZ!eP!$nxRr=Bv*YEaWgBH_Hb>fiLcm&S=YYlZxcnn~Nj4lT5Ny)NIh=BMzPaN>w_ z!~n}v#r7`#JIxSdr`*5&Ykg_}{bVE(X2bEG&`y0) z*x%2E%Z5Yn4!>?OnFaBTSmkS+xqxQ|OGOSGaF8AFJa>?Xp)Tcm&W?uW&Y-VcW4wxZI|+=oPwWzVH^C;IN~b2XNQ?@&V=9~ zAcfi~F4r=jKd8@8*FI+MYDC#86U>W)BGBv#&PhT9UHL?6PPl4XR+bQsIr+YpE~69{ zl^l^k{L3Jb5qyO;gSG;=b&LH1Od;zyxZvX8Vyb_&Sa3_4tJui&pi#N=>9&R0tU-=C zRb|5d9W1#3i~{~u3~apLRYhj%lw!cELBVdnlXg^USrniA+4{PPDstPn92oM!msUH(g2pk3Lv%!Gl&2vGOx#xPUnx2yGpP2 zU_>>h=Ukf^R30qFAqKR6I@#y){ApJhm z-tvMEP)LV_rBy$wdyTPFXWn1&dK7+VK~)cg)D6f9`+Y{A-R8OJ4VtM&Jo{2bV0>{} znl&N|TwQh3TM#=i=J^(2Ij(Sk06-gRoshuOo6Ay@rLZM*)RjC@NHb7yh03Z>;6&ZkO z_Q<`g2RkWrHi6`+0n%|&=2kti)~y#wU9Wz?RF)6L0F;%hNP9r^6Ch+%>}$w`3|!+@ zy@p^&$YR1f)_;&!d~i8%Q*}3u!1y@v#xO^PYHJc%5m!Z@IV3__f{101i2F3oK4W71 z%HVb#01#LQFFaykJxCi&3Rf5gh5|d5!HV+^m4g;6$^`i)s3|oBQ0Mt3H~m8hCIX-! zz#>hT5)+$75e+Rm+>o6xfdmc|y?PbJi?MrFlAL>)5U&%sEr=-h@~4^}RqG+6VT$Sz z;C`+uwI_q}={+rI`5+$$J9pp=CU3wxVq-%D*N0R_&A}N8>I)DKp<`qTr~0L|61prZ z7QLcD^3WTdwh!vJl<^t zsg*~L1q5?Y-&$Gmy~IDc&uLyj^UJqyY--4{a74Kwpb27%WCJ43vhLc2jt1~YL1E#J zIeR>K=(Gf2uPiKVxm0Y$LGv=b(C8)hEW)ZrzC0R?RRCv*#vy4`lzn?lA&Q~jfGP01 zw5j08NEx!IH+!&T0YX9x1!(*&0>)4puo=dUpg%%wDJ3Zhn(I0ynQ%wDphiW}0r(DB z;qB}3@XP|i$^`6w@PV`LLf+3LnR{0xIa5ls`iy(sp50tsHrShfpUK23h$2!Vofzz_qHtVSdLffzxRMXX0$T?F@agmlV(KJaXjB2a&#(9UIMJ zeS2HZXc=D932iL)&dF?)8aZg#ec0s3X#~YbWRyjwY1|(abgi!v^!l~s8gbD;!d0sHt4@+#dKwjgtUExVKy+G6&HdF1|Q1bP2E*Qwg+`83_JDFG8bP4iO- zaCdLD6famr2!?>h#rH))*?XwoR)6gqANiyD^%Y;y2aW6?xzi%-Sf$8*z%z~dW_?TF z2EZh0H=6}f9yXbgdlt<$e=AnwsFXzxA3pf#^qZ;?OxY^5<7+-OZlbWe@X)?}b(Z41 zp_U6L4J{uYjX$Ktrs;H%Zkw%nZSfb^D$9eHEoyH5qM`_b{n(~)_PWgO=z2(PQ{K=T zGqqZB&_rI7Y3O~n!fzn?y*I&us%pDT7{3|b;+{MgI*Xs^=uG_?H)f zna`islB+Hv@AmSgOZd$nUUQ1%h1(M@P1XONE6TsPp}utH>+YqxON%$Gc9WUdF6AArEKB{nqn5G(M zs-ghy`j|1hk2KW#vx!+Z^#9OK>_@EEx0JIwdnkrgs!R0s<_3u16&RFl3-zg^} z)7864p6LYHx5yy9TV{5)6Yi49%QGAEvx|P z)b!vyBvmd||0<_92Dd3#cFc4I$^GUp1d(Kjb0ek5Y((ln)9-{+7{)!{X=j zJCSRO#S3Z=kap+9RY%9unwsR}L6GeuLkSfT44hd1fCz9CB8_)oYYn);#y?ze`4-iA z9gZjykcv1!e@g{%H=PrB1`w^E)7OVq{`^5W1!13DkKUS94Az9-9>(WpN&n4tA8&K8 zX9KYI)25=+LAn-fy0ygp$R~mG1-y@jWXKm>!;ndGRvo%&GmZBf?yyYR?#9oJxPhVHJpsWmI@%TKV zGab0GmR~b1aZpjLasyn3i)z1ZIn7Sc=WO*gn)Z z6%x;iH8A$GsTIj>u6zljGnwfw=M!CQA!$3mz`I&hRYf-@Nwbn>-N)gTB_=YAUjSU0 zVbz!_Z?Z_M>&%lUOa`#L!jKPcCbqEkgU}ViG;YC7PyIGV0qpDGF#^%8bQ*S^$VY{{ z!i8%;PoIURH17pG<*&aEznU`W2etxRl$1oufbRo9qRB}~2k108=t;4cq>hA7o{6JM zAzsUJQ%XBDlyZb?xMEnhNx{ns8~Que6A%~bT}M~?b7_78ZV__(@(FQNbaBO&gAb1z z;-?D>Q>DcO95c;4z(G%@VPuO9I+xKA1d1ryPP`dF{$P@YAqCQ4nT(Ev1dcBk2c}|Q z4r}EP7$}|JWz}2dPV+fQ3i>6DRV-Qn#J5WA?Dd@}moy9+n=B>sV z6Bd33Y*$EC)kIlWIiCl6Ywllj7a64J7Hp4#1@~1j)HUZhWt`jG8RCJ{FD*<1#0qk9 zo?#`oiL3c1qed_6J0()6?$18YMOaAlB_Q9beyeL$sHZ1eFH=fW)#ywpg0a5_(N$hj zG6I|}pFi~X!>RyRH``{~jPXAsoi$ZlY-)dsm&m7Su(#=L^1gO`mS0k4;7Qnf`3cHP7E0NTGGa zJK_MkHAueL*LJzz=C1x#*Aw;DO}~qj$oI`SXN!*A4PE}GLzaE?=sWeON}plB*K_B} zDY+!I$hG%0d#7bS-E-HhoM~;nEBrp8scL5Frq3D&v#uI9F{hva?(`RIUJ+uwtnH+c zW|x7HuU>n8y-aO9_`bA1{L0HmyQ*(*Pxbj7(%JIX&$C$|?{hO_W%A*>@i(e=tLqa} zZ}5omj4zqUJSi2tQ##NtB2xd6!_7v~ECFuPnhX{>iBql~CofJhdJcIT(<~l^+-{oE zwUUW?@@o2+UfoW4hxgrP7}kQWT7(K_nz267w{YXX zQ0OKSg1U{RoO+&1ykRsyQ@S|~dVtfX!B;us6Q`5X9!36&e8@iDJ3z%T{TLV~P;Xz1 z`=R`G?A9$%=G@&|#{zeTPE-8+c=#sx5~8gX0PSDN&mWyz1Wf~A!oHhx*w~{DMW=Q1 zCbnCyBI6tHfM1@prnu!eX1J|lP z;2-ex0G!F}sspl7DhpRTWR0r9#&odx)srWYkW1Jqfw*Jg$R`@tiH4^+r}kTYY+#OT z2FL6*OddFOfrBH3etSdMjyPe_lze5W@D=!eD8YRoEUWYoA>#)@~#7zodS3}x1`fVL_}ckK$3T_?hoIlzH{f)Oep;K+^YJ3N5lROst42yqQSYQf|9RAMN*eb z42y`!A}PDy*htrmz(@gnA(&TIS8wG@fZ+q^tIx&)Q`+6s^XT46IM0>E{+g@v86T+p z9&hKt?Z;u~4$!0{vZ#0O%Rto#(f-dlD9FS3YKp>h1Q^cVk z&<31q(uFmr+GQ9vC(3lZetn?WauFt*s9%^Ta8FRTZR@{dYlBe{{Z)StFdG zk7)3~4kj9dez2E-em?8ixuzj^)fj^!Iu3=E2E83e!hZGGbDMu`P$&KPNYd9FFI z1|&&*@J7Icdfp+0L$EvR9K)~4qJN{f__dm&wY6+^C!SGv)m%tmM7Y6z)t0CoI1BX> zEUFh5PgU9GU%3J|5Gw`HP!S(vCYu4*1$hCcBZ`pqkBzZ1MZjYyJ3AW?XQo*Vyb^Hu zP{^fL3h0>jq~8GgT)Y!aqJzU7D+TnK_>}=Fig05XyxF~X|9*Pvp1sFyS#yaL_6zjk zF?EPbL`*EG&LQ=DeGe^yIzIAsolI)S8VB|=D=l0!P0a+_L%VWhlY8cu4p)2dJ=ULQ zfAdqM*BC2C5bj`>1ohP0ad7C&w~0@;K%+nu*C#}D3woj{XGwoYkSZNxZf~Kaa-`xI z4&}1?ZKA@gqZ|L(?^vT)pD@G5%rs`^65PwLZbF>2={Ljp`INxv?eLj}DB|;HIPiCH zay=9Lre)E+rt03KktuMu4G8+g^pYb5UF{Euh2h9qeh?aEB+bFXA91S4KI>FuQR&torlHLk#o`;jrA{z+yDv|>p+{t&OvP@G zsXP15yA+)IGQ)XD@@Kqd+JH+1bF$?~jmHk|vj!hS2&1rM|+Jm7Hh7UGH9 z%aDERWd!vB^(lY7wbiLzDbHk`x3~S-a^jV2M_e#yWl53l?BL5<`L8IFDL1s|KqKGN&{ z88UrON7noDuVrS-vgpN+|D3I(PDk1g?%)|Nql-}^#XLeGoA`+-3UD^mUG zX}T9(+J@bT4F-2oR!$E7W>|CK14D=PZLqJg1c$q3J3YcC+5#rF(rM^CkbNs4A`z{n zCyLMzhq^#x*$i=AgcNW_q|r29(q=HuJzLhZogIIXhlUp-txo=lUM$Ap)uE_Z{rK_K zMe8lxxV!J4Kfmap^4UROjA0^P9HRqnaIQIlFL|%lL1{{&TLXxu^u6=T8^y#XF8y0}4er=7K%VyJn5%m6w-`0+k=hIMB|6@dqt1Jn;Zp(pwbW18X0Z zGwtn`Hn?OiOHCucq-G>Ur;-ZIhOJK~QPrPlm3;#$1X42oMTrIesFI!7uVrwHGgSdo zAh79&m>PHN;QFd#5d!)otfR5mzW@9qW)_R4540JmfDJAf!b~Y7MEyn`^gQ@*Xb4R^ zuqD3D6`U)`k}-Tn=urUXqOB9L#JbbMQM5GA{;$VfW)n}dH>OQP`&rA7ka9zw)EaQ8 zN3*gjxi11bl3eqnHRu7>$G`MGwak8jLBk(N@)4^;+!?)=- z+cMmQ6*4+jdYYDOAXf~~5W`eeZVihcr08P5d30OpPkoiO26S&G3F8AG&4uYms*ZC3 z53;lrv7F}`*%on#ZS=9hS7OdbDapX)-v!i?k+d^=LZhKhoBn_UqQ-8`(G!(oJ>F_q z-#S%n7fq4?q4j@}yxE(bW1|C$EJO$_7|!RBPjPm(Lr%u@`%sg!3?KF_rp1Y(a#tP zU$ClYXrFj>p9t+^^gycY9yZTjHIYhuza>PV%ztee?`tsT1xGav_C zHsJOl?wAhM#&*d|cuigKM3!aQDCg~_qoGSy!P9953sO+un9G)1ClZok)4yh=0JCuBhTU|J63MOM6c4Wa&5Dx2X%ea!f2(0TCooH}w5M?k>`<8~PFVf%#^40`Wa`BUtc# z_>gZT-S6kho_e_}K|H`VX+GnJ9^Yn(l&!Ap7MDoM%H?2}(Ir@pFnz{)QBGDC2)Yu2 zFEhX$)vYZo7!Lm^bf#4ICrj#n5777+Hn%s^tmos$WS2f*#%m4m!0aN>d1uFu zueJQV7`F2Etrfr=y186DiD0n+8~58i`}Xgb)D8{kynU<;e;$Gv+LGVkrb`?$@pjVH&cYJFVeSO{?kMp(bvyt7yBTLWz)y!dw5+9XhncX%J3 zWzZJm?J=UbF}LwNFnw*7BNePAzU;0o@!2<>d3_$L^!>^n$x{{CD&Yn~HP#>YhY?+@9l*}tW9$5#KMBk%ocw>qr}Stn8Aao>Dh1j}zd5<^0T zq6+2x{eh{;dOh7-W{r;z4wqnzbM$BBOL6|WSU`R1dbWyL!!uD_kN63sF}mfB4wM!! zVK2A#sj|iMz_UqTTY}dBX1#NZf8brVGK7USy~xfmL}tJtrEG^hM(? zp|%Q{FlYt4)Ihv2Km(ME=HEWm{f}3ce4f3GF(Hxdhz7vg-mW8Qw)oY8`{`R?kVy&w zm;N}q&;V8H5Ed6Gdx5U(Vj_1oguMFj0a1}TYfm5#3e%m54E_PD{mK>bb?Xi&WJc)W zej_)^eBZv_o*uZpf<*^s2bQQ7AdD675?%T*@WOn|#|M6`2u4DS4V-~W#&>hW04T#p zhg^fSY6r0RfR*xafCfnrNUJaQhakXX^N3bS9x~UbhavoEb1l1ldk>m#adB8V09X$a zLSX~-2igW8+eeRn`}JBsoMn@zYFrSMJkMWbiS^ma9Rlc4i@jn+MVGrOU<=JF`{aL{ z5slCV0L?Krj(Imh7yoy5!dDnQXF$L-UR+?0mM)NoG9ID7C8{FW2y7F50d6o*n7y*y zC|gqO-dIR)+jdA^0Q^a&nosEdvC&7Vs1Kg7#-vVg_Q(n3y68OG^o}?}N1*QD_CWV$%qs z!G}k|KJM<(B}Y&($s$ii$Or%EBG1a82-MYxx?4TpAb3kNVPP%A^GAq8i=uZD@Bz4M zxNnVtV;8!=vSfwe;Dt*-W$~vOjex}3E-Q4A+BZV`BwKk3!IG-6^K9zQf3>@z9fz8%#m;LX%0)vRfaY~Dh(HGq+c*m2vN$N(V{ z2$7Wk&SP@vTOQHS(bBpMD^z8@V#%hV&Dotryw6pH+0>G0z$JWjU?gEAT~bNZCjxV7 z?)jjzevd?oFae8cJrwhLZxbIMMS9|DV9W!jP1D-OY{f5XQX-mNMXs`5?3dw7xOPo?*h!y8kRl%m%`6Hhr@I8!iS^#CR0XC< zx&JRHKrbTZm}`dj;k)m~0{=qqK*{clG&7-t(bFuNRcd?p6kFz+$39+P>%O8Bbn?FR z?mtDWvpF{X*0pxy6yt*z%eMNv?ANFK8EBWyO-a3S~=9`FkW#w^}UTgL(>Ob_Y zj+RXeZQHyuXtUPTOsci=m&PgCYKM`$!^-7VT8G1?YPG)!J+Hs&ah0)M_28xG!SV4M zVi+@ENA73V_3Sz2jdTB9)$a=%H9%X&<7TNOrOo((L;mAV4GqwwdX;bfx+E&&tvLkK zc*D~-ZI!@~dOjb(CY>?)5jB)BV>s!)W=KiqilH{UC>jFa9}}Fve{go&6`8euo*U6; z&D<8@$L3+7u3yCR={|Nz@FGnyG^b5RVhaPCGx8p8Dmr-R>z0m)AO`3S9@&hJ`@cf% zCSA>GnlSXE2{d91<3(?^46w_9{=6FeNGTRh0!0F?F&u$! z+`vtxZ%8j)N|i|IDNNp*{E~KvE z3Lc`(Jna73fVR)F4C!bO?8?y^h3V)bxVPdR{gv?a)Oq(z>c$G))W;K%M7K*w)Q;#Fsi$uP*t^bctu7_$a_U=%o6+6&$u);?4to~}CAGwOiY+-jE`w$94}QqW&BawkSPQlQ;Az7I7^Ukk6gu$d zmPA8}T_Z|#fCii%hJL{FEzTUq?W*ePp8qyraE?Qjhii3fYcw*IO_2bG(3q5Ve$E(d zu|doc+uJKElnAaaMiB6g=%%Ky{Gsb2 zoGMPDWcw3wb9shBemS_oqtWfhfkxM%?OJr!ZbuJv|sun~=7nu$QtuGJr_f140! z0XPtz>;Uv|h80XxcC_q!Wcdi1#Xr-x+bg_Z*Qf9LuTWicLX zTU#bszB#JxMR)Qi@BEy<-eH1Hl$8RckHCC|5)TN_^AFQ+AeQ%d1B7+-U3JL!4@cBQ zaZBlOdpvPa$lhZE5fdm2EEIix=@zyEoKn%}phJM0IQ*Cuu^Ds{`@WCJ;;ULvdzh1j ziQ8Ui&Ry{6aI$l<8-qZ9;gR?MES6w4Zgl;C`to_lY6q{ifG%1(nFPDR|F`1MBS7_x zrwf1SD%^|2kxSXRl!WmFSBRZg0%Aip&G*2f;n7uWiA(%XyN3-jS_T1QtYTr{gkJ-S zTCxbf1@L-Mt~vHze+~0slrVMb=Q$jU2nP%LLNtIh?>Axu81|L4(-0r~*g-{7R5VcQ ziXJ->p#tmjNrW=1NB?6$fD+I!-)oPF5-VD)hY-9C&=Aw;OU&)E@|VI7Kk>}jTlpdI zv((9k1MSmrIRW+pD;f}Y@sykc%buRvT{*&XEF!qm;!d$X07-0;^kfBBp3-KpVTmRt z)1XC`mzO6IKH(|6Xe3RS+4H>U>H;A{0~vbJr7#JgsEN8;HYrg{q)9_La*u2TNk5&G}Co@Zs@PfheQmwIF1>! z!yO#~I;M77@r@hEyWJ|l2{Se&Wx{`W4j^~WDLG=h|H&EsH(cckeQl|gg=w(Zt#jb9 zW0*dG`H@6yJ}zd)*&>~x$=2ajX2sd9@lXpiq#biRM3eYf7`Mt95JpWY`dr0YI8@{X zF0|9S?2A~uy8{XcOB zZ1rxl?4$H^SjQ<(Tq2)jY!{?PvqeRFDC9@SY`l|EaJ!7*HrMzsJOrOF&vdzPVY!)O z=|8zs=3YX<=rLN!408c|`}80T;IUSU?ZjT$|?YoK$d z<;dC%dQ3K{8ROQpgj`}C z242_R-IZm2hfVq5ef3wzpWN7crz+3mBxS1PK@Urei?-P6K9v?XOE=91txz*pVHQCf zi~9iMN5!@XSLitD54+ZOHMG)Z!s{ZDaCZ65Lxz~D{UmJF(V?fGAvvdL#&X^z zjz*6%KD!skmGhH8IR{`BOVQc^^!pwj#kNYIvk*TU5!SLWX2ABY$yP~4Ny&&%{*bkM zjzY%U#cQf-|M$>p!~hT+*kiPxqre;xqLg;i%+cu!l=8-n#CrIG8y~=Ok;UXyppz5E zk#@=R&p*$h_`{Q?V3+jToPOZ`z-n;DlP_wES-O1n>aS33i*O*TaUTtZY;5fHILVERBTt+g zT8vw_@bUzoJUJKI@DA$`5bIEtA$Nzi9!Fx~A}%%#XskDI$zdgdMGv+E2Hsex5Q>1a zY>19*Dg3t;1@Z;-DeRP8s}{hx1}R`-UX>Xw938X7<{XEfmltz_rbJ3&+b2}4 zJkzg+XD0rjNd5cCXyf#}>gc;-of+=j0Lu?$!aG}4z#fQfC$WDY!w-&5!O3SD;q zcmN-$`6p3efgpZycXlqYQiyr1?|J8iCkAMMkXUqKQ3K&rnu&YfC7br+`Rz1}f+jNP zeklozXTFwy7mYg>9V}FpdWm6PBfP~_iP_Q}uI~m#;i8%W8*fyTjZY3YB6}Glwcb@^ z+Jk?A>z69dGf)l!A%zT!7zDea8<$r=7Dh=4LX}a|04)Fx###4n0@E=*V8{EV2W}3a zzr)QFMkuddkpwsqBdjLcb{so47ZIf82yn8x|MZ_axuzPUAJk-6-pH7S7RqOu(V;pv zSiNOjz54Q5oP_{}LJ+t9{AsX|$F3Q>yp>x$M@w759)&l8U3ss!8dz$;%Gg`9krVxI zAq|*OUI6jV(<vbwByL*jh#)0mmUq>9fcgoP-soMHr)*bod#L-VUl9FqCf=cpxT@dwVXfs7tMslj7ZKTy z)AA-O_g)ih}%AwY;j;{B!Cd}qwdCs)9N)Y#I42`nkuj`uR6o z#jdjcyyu5dQDImZ6@{L56(&%mqDcqY2}Dw3v-~ge9mNnI?wO;kd$}(hjAT~lOCWdg z?c%xkSH=6NecFTG6&}cHu-PDKu5CY#@R8*UG!3JZ{gP`wZ4o#Gzz{`%d+1%0eAiW|u#U)Lkig+n-$93c(fGbEogo7Ou~4E1z;o%e zoEM&uV;>aaX2Z4@wy~_5TM8T5|8qyfi3w*%>VsZmz*g_yBkr?vOkwk8updbbE;V*= zQ(IT23bm5+TI~h z996P$CAa$I%I&1C`xVO|@o?f?!Nh1Q90#x|1|LK7WNN%#_k9zYZ(qNzla$1dY+7jB zjH*M5cyRqXOhs;#l+e@LAl{0_@`EeJp!qZ2R%rs5;Cs!@oBj6_Tk-Ms?OT*ptj^PO zb2(($1wTloVFyiUpRrZKo{4j`OOJ%34VzUsxzsWr@o@xpQ*5cZWy=gy-lF$28=U-6 zP*!)Gd!jtURy4d~K{N(etXOrLo%s(t->B$5O^&h&KUzx+@fyeOgW z?ii=Qki^ZwW?Cpws)(~n`ssH6kJw3V9@!oYcI^>MVq>sfc{bqXbTdh_b+=IMu!$>OvvE^hnr8|-k9uW$D(d7b~|Wzpke z%uZ(-v&FiIn8)IxP-Wf3T>RkDF6ASqFI zbxs!@r=1W9^Nu z13(l0TMNbFb`Kge=Z4S&<<=-69p5Rn3Yq_X4T8-ua+u(t3XUFB5eMGF9PjTrI$}W& zA?W?_o4O9{OO7fm%v7@d+28ci^rX`OKCD6|?*Z!|tUK-OL`{}%S>2+wr@+MsY`3MQ zCAyQ;B>c!aJAM58K*GilXl`n{IMK8+vAU?c>ID$oE zrTaVwOERGQ($U~(gfro`VP|1izHjed#QyHOUe(a>VJr~+ptyD@dD}L)jhdUAGl;|X z&AY}9LUkCvO~;d>p*g?~59}W>{qzJk%gOD&{+jFsM9%uQxTxrRm>h(Vj+H05s~)zt z-bIWyE5>%Oujzaf{F2Jbw&a@Q1;$H+>ZJE!lcM54{mBZa3S1X_2!d}PF$`z|&;a^J zEG+@nKvoYa2bOa97dwwWIBG-jgWwAhZi3Xa({UBAp<(Fx7N8OKP>)50JEcIh5s78P^`7oM8k3#7cqnwD5g~ zcX}JleI~cUeQ_~NKBDeLyI9y$psJHDi~~LGyfxQ$H%=72qh=(ZWfOZpJ*L~aj%R&L zO+jXt(WG6`-I}GOFZGLB&*v5M+xqUQ3NO2cEOQ^ec-Hg8r3Y8VDKd(a?)<6dvVf^T z1*tnW@{5r>xbJSo2yrCdF)u=S3pY0v#M$nzqvvX-m}U97mi?w?1&1wroIRUEVyGe1 zN9$-Gx_+rf**|_D!)AA<|}VKRT$?Zaoaj5Ii!S9Ai?85 z^YW{`{a!gcW*5Us`MIjhDEZ~d!&Q>}=KpP*+x%f|`~d*nMHb&3i(-B zRub#mPQ1~k`}eOJ-pO1sEO^J`7TCVIcgx;xkzaA_jV3aWLZ_IvbM@0r_Lqk}g zYvADPdptvY3LCca3%GN)v3b*E5Gm=IC zC@RSzh0N5ooNW9_yKIJxrPK7>Re|Ge@PhCrh@QX>B-tSSJtiLz^3_DqC8yGXK1UVd zg05_{Vv*REv)5nCYi}Ug6Zp6RT!Wbgk_T2=bc;e9+%SBBzbTf0|NOt-$)@PC4r_91 z{#D!SCc-P_`JnwFwiF^%3vG!wUu5>trN^+Y`MiH+bpOg?!78G1^+JT5r`t!%cXMa$ z=C7x0g7$#p>)X_wHum;hixVis$c2+Ooh`5Z7+60D$p;3?fPhNudleNG(@fBfqW)sk z^umOU76EiK4CzN}=IYZgCafDeT?q6YoD(=JDG3@P80*7gP8fiOfN|sM$};RSs^MX^d3CJm148vs(>8AOaGQ%8R>Zsq zI(Qtd;n-Zz=j83vBGgJ-Z6W7g?9`dgFV~(&trq8DPifz?>pCVYp&%c*eLDjmuv9~R zJPwOdM0N(DDZ!A4ElIgG8vN_8O9!SvgA9`4gRB&KZMe}Q6yPaVv3LtSRQo3K;t=W1Z@Wt3|LA)+u-8D=xLHub@k&IbILFDc>qGOUB?59 zXQVln_-q~|ML7PJmLg9AsXS#?cCfnb>-#dd2+_pQ4?OT7iQo~ENRdPDLD#$w)&r=3 zKf>oZe7c2c8!}^yi}9%zNBk$ytKfeDk0iKIUfCyi@F9zO5=FV0v;$3yY5G62e0bME zQWu?SRvdX+vw75rpudc76j=8M)&t<|Lm$bapRaTF{ZYKdrmuQ#$eWc}J-M}Dy7&7Q za2Rd0m1?`_e{HMMx>_zJDSEh~Wj`^v1qARlZxFKH`_E%2>d-@t+g4U|ZT zH@b%AI2~d^DZ-PfkX5=O5zy+XQ*~XR!EE{`C;pG_vIDnR6jZDazzD!??f;+AaUAvd z;_MijTgVCpgoM&%=-ZLGQ0>r23xVJ-uZqy~f^L+w>%>Ga)XhJ~vYl}mkwSd_SHBkk zeA!iC1=-oPBWLz3zlDD=`rWHn^nDwIhRC`*D2neZ zq3pA^zWECEgDr`OjZk76Q|n!*C17}c|32)p%w?}1dH*#iGDzudx@&>UHJ<5aoah?K z0M)^Iuozyqy=>^mDlAm#Okk2ZwLw=`cmDwa5$;qIq^I}$g0D<)9#&-fdl*Y$+Kl{# zNa^jqGun!baY>EkjP8nxu-o| zM4yl6OY=m8x-j}qJB`;hhjIU!R~)5^_{(*>gmm@=D(gK=Kb5(tGc{*} z?b{yt+1SOU2oCvm4taBjHGDbx*6&kiVQN8Ld*^A#bhU5nq2~C^J(X!}7%%O3|1CM7 zkLgt>>qKv3x?8HR0_Ek06{a;}SNSDQJRW%-$TfZME~|#Gz{5ADd7Kydn@_V&m$rYW ztuB4=tvl7c(!9iBa4A!>L%hkn{paPdJ(qVWWJ>3T`GxKI89HhjqSYySfbn#$&b{wU zDIE?`%mj+gt(Nvhf#wz$u}*IGW7LFfi`mI9uienScWvUPy7&MO*B0Wn)JI0EEz=O+ zx$o|(r~aO%J$cfwtD0vh@XDrbi;j1`Fv_s$-IL_!jb6|(@+Wg+2Dd0#cTX%wF?V9E z0rx4sbdI96V}1Qgm&JJEa%bDsxDXJ!NrkPJQv38iuQ1Z<(tO>+BdIkc|zuPiEpQIEQDEXJa*&=ysGr902>Ml?vNgN z_6URXkOaFZvfSRAjzHO_2LCIPd+%(K(#~Wt!ovQRnW&mGvEOsoNE=P6bL;lk3Kt& zTv6|1$Dm(+hLO$RUpHV_55Nn&|3N|lN)E{ntOj9YjpG?41=ymY_d_Tub%bO(`>M#W zlF$%5(Tfw6Xh4srhQu0{rMR}(EMl$J*V>6yXdHD0@~junpF_*^^XE?x%dzb{AaLlw zf!E#LU;H9baphaZ3c4IkF&>HJ-PA3$vdOLvW^44D&%vr|PA0*#!Upa76O`;%S(lWEvw zMCcV_yF>TnjStdt#ARrq;NroSnVVPwnL5xXGB+@g)D)GB4qtV9LqlfbX7I!4miK8g zi_n{e^9dDn#rggI{rl#P8|b8H-~;H4a)J@Yd~6DCvd|ZMy|p_z+4s7y4>0st;Nnxh z&0Dx>bBk$&_S&!`DODbiHzv~{D%dV3EF!-Cd9C@LJ&1RonwUT<*L3E$ijuxd0TOT^ z2SA@Hj?~q;@x4SxaK{V34kA>VQ~mkNjDMSwGl*lol9rwQ8%Q9Ia8WA4BxH$%$AFz+ zCb{@`<>N;uB=nxRv+pKdN(b>K`nY7;@YSO1gzQQp>!)HMI$wkSS;9f!1WF*LX|U+( zt^4{R)&_?Kjyj!Vvl#3lKZ7?QCrcz`bUN7bmK;G<|Mt$TIFMSK9Z$1=JlWo-I>fgt z*x&gF1QEz6qK5`VN)e)&QqS3WKp^**G2TOo!xAxwv6e=x)TWP`8x&|V|0$NhXOkUSwF3=$Kjw1 z$eb~x$N~zM(cjB-^16jQRM=;A3Od}S39kQQf74{Z@4zMs!Fre(IjwRu$WJJ zbH7;g@t9)3#jLXn&9$JFto$1AAA;+GVA!4uhnWkNpqDt`lk z$+H^!w^yr?PcceB8?A9*twE86$-fm7WY{jYfN&oO2QiD`vjm}0y@pF2?*9~b=`t`l zP!`&wn)|$?qhCIoms$XxY%)ruP96QL@qtAS=2opC1&JM zsaNjh%bbd~AycL}-4pEzMEG#oDwSBs4<7=@D9Ny(h{8+P?N%F z9*9MHRW5NeKkx~iXQH%uh{U35?&O(CKYUa*HfiU@(2ft;XJfxA@RMT7eBCyzG}k)V z+Aie5$vQtjKlr4un3Kh;lySJQGT!d7v$lTF61GQu+2w@9uN2dUFo`Sued;3vm<_<) z2&uo4r{KIT{N(jVk3`kjdnFhKF8S9Tsy*`&Y(n^>-|RkKJ$9R8*#7R0TXk0Rds&~( zC_5k19#^C0jtLEKv}X$F3kdk2OXo9RtvGzQG0JZFkZt7Fh8o>pIqmjm9=Nni^ah+N zA9(5ZYtFPvYhC(=T_-m;ZhGx?TZzODaE_ptEyyv+4lOjD8 z3?UGv9N}-DfjV20`+0rND|s~@RToMyu5PKE;?l2IA=YZo!rV&=*3TvZM!48!87IS@ zE>nAyC7>@B8})1}1suC+onx3lpm9QsLG01a)I%(pFHu#e<`(Hiw#M!Us>tl9=|hIV zCBQxdQ-CZJj3Q-BQ(KuI2(vihq=737jwcZO1BMy;cniAxeSPs9(zzy1c)x){`Kp@C zRNE>6g!T3YK^+|y{F%rHp2zz%+fYE zLonJ!H}h(|Ksvc^b$_9o{Z0uDU#>fbli#MMV1|VKA=?D3TPQ@Zuc1RXslm=0l^-B0 zW?&q6gd%vP;A{lT49a91dYJ0YA`9;-TMSXa$f1=%H5f2uTYi;z-ngE2!MQ ztBAxTbI%zv$eZ1aa@4WFZR+ZuH158ez}gvmon6=KLT6yI=5yo-9RKhJV}*!e44k05 zI7HEnaIr@zim z6#y0lI}q9nmmb`GJPkl@5FpYaQ*s5uN084kkO4KphzeN{nGCZRSy|ZtF@JDt<>kRZ zjJWw`>$!K8!$?xsDd_s~d+YfYqdF5=b~c|}FeYGK(?TgNEyZ-}>ndE@@?<;-nX~6t zmkTS1+-(2!A3ODln3kQxW`JrU?{g&JQdSlc86jN7RmM}0W^&`*1k5xn=g&UqiK>K>2`4`1EUV`K6F= zf3-=2y(cxPmAwo^T9P3&IWhmsVA@v*52&KJ4b zpS?J=?O|AYhdXSlX@j68KoX!Wk#b_O;V8qquieCYipCRXZYpBRtu96Vl_7*0UkCDk zge(&NCWZ*+*U=i$qip6*k{SZ_ra*#npuwP zG{`YF`4MM~=|(h!eRiocfE@JrqaK(0v44j!$X#`v-S`XgTH#kV?^6Y3|Iq0MbSwU6 zt#0t=L|9^HCk-N+C@<-dEv)3%_e#XYs=IVAoomZcY-R3$=XU3PHN}J?VZO|*>C?83 zf%?bwD(j?T|6livhGAtzvy*R>YMPQDB*p^;=+Jl9`Z-h000wQvs)+*w<#NT&$4HJ7 zn?Ba$wj_9~J*p8OuKZgynBcfs^5N!G>Z9R%TQmduLgfjYNd?3CHaR3i{vj1 zuEATOQDX>>n5~>%Br)>M2693KO~Ch!U#+2sS^Tb81F85z@{dTPIk;!*kw`*`P=vL% z8e!9jBn{3^7HWz7t%?fdMfiGp%I@4Leyt=mGBIoC{nQxRJY>e3jSrwUQm$Rx%76LE z@i0g;NbxY`$SIbRh$1otayYExjF}9nZ=v*w{Z;znE}aGm)Z|>M)bqpik~O6)^>jE$ zt7z8-;{(KF*Nx~aEMKpsvWz!hbODt7ckVCa!)6Yz%DuA(b9F19?SEdhz2lM(%M#q- z)orvv`{Hi745p&gkr&72DZ{YH*>_7T)&+JK#sqNrFLr%Cqb>35=Jo9Po0OArH0Tw9 zlHeByAdG_#Y9Le`v{V@EYi*S*9^_w>muHyzy<9YW9=dOb0xT54g-8O71n3^2t%zWQ zuw{JQ6UJ2_G-RmDbc6Y4aRZF`9dKwxJ_?Mm{V)*2ZUrKs;E<3=|FXtL@e2>@9aJ*S zVu&E=W95(j7i?dV_3N?jMsw3GtB7U!OeN&v9J^sXtHH++V=#Tlciv>UGO4oHo3dYs8CNIR~7fo*;z7~R=AhJ{xMjrn2~U71JJ-Fcs4fM z(a`~%8xYd`w;udx@F9OMgTbMi8@(Qq=9!rp1ThjvBh|15#laQ+$^r5xRaFo<;AMbr z4Bld9#gFKo*Jpl{Hj*V$d}`hUSb-B3);nL{Y)sVzG6Wb+i_OOuYG#f)|LH#%j?f>{ zkycj}PhvD&8boBo`kJ8@h2Sf9FWxcCmr6oiU0qRG$yhXV#%NvPiJoAJU@$&VWsAFl zp@^)FcRHg3;wRX8b&g#wD1gio&w-37K-4r7E2JLs#GN^P8XHFt;{bO+$Ke3)e=K0J z>a|kXCYl5)nhYN>8HTkoAdQBGihOxi=sY}sdaVJh9*@>QVh8&!tlc3L7Tb9m9t()c z1)n)*0LEWHwFmv29UP*=wxir(g`sr?eFYC5O-S(YJVbctORy57!GOaVUs%pEy8m|1 zqlXU(xy}EYUI~&DRAG3}^mnpIff)%Xq}MeSH8VmFI)8oYZWVf39#T4oHR%3-Qv>YA zdf0DhcmkzdSXjW8h&iGeAWiq1H>B6xA8uNtw@=J}tUuZ1s~#1?Nz-9nBwDPKB1ntz z@UukF7O=L#{Q;r4c`WL$e%&^3#f#qT#$qjN(**;8a_)hYl(r zb!%?ndv-%oTpYx>NjshCx1nPFhOi{Nnyzoqtu`4Ze*v~)bSz|hZDApUQ{*F^O5Nx! z;)!kW__r%(t7^o?lE)MGF*+6AOi0kw5c_qy(flYQRh{i7;RDa*LuFRr?zzSpqWpvw zy$YPyY8pz(QuN-^K5f)Yh6@_W`qPdjzhuUM-Rg3Frrm1#M7(j>8bBerxX7X(z|F_Q z-D@frUiI=1>n7XKgmwQZeh>s_M+Y=B7wL|@&1ZPa4 z$1IEO2PJvLoPz%xxGp$brzxt!&STFbzYWF}aEki)@niXSUVQfz25#yCh@dbST)H5p z;mc1E`L)WdC460DkYDi%0|UdxAYEj6+h znXF7!!@rclp5FiG3y%4_AMrf(|Nnxu;m3~R3#8~j;h?`~&`Fm-4~E@=E&<+0+zkEw jLOcS4JOWAbrhY*lzMD?QEv>`The Material Editor

                          +

                          + +If you are looking for background information, read about Material Definitions and j3M Material Files. +You can write .j3m files in a text editor, or use the jMonkeyEngine SDK to generate them for you as described in this article. +

                          +

                          Materials

                          @@ -9,8 +15,7 @@

                          -The jMonkeyEngine uses a special Material format, which comes in .j3m files. You use .j3m files to store sets of material properties that you use repeatedly. This enables you write one short line of code that simply loads the presets from a custom j3m file. Without a .j3m file you need to write several lines of material property setters every time when you want to use a non-default material. - +The jMonkeyEngine uses a special Material format, which comes in .j3m files. You use .j3m files to store sets of material properties that you use repeatedly. This enables you write one short line of code that simply loads the presets from a custom .j3m file. Without a .j3m file you need to write several lines of material property setters every time when you want to use a non-default material.

                        @@ -23,7 +28,7 @@ The jMonkeyEngine uses a special Material format, which comes in .j3m files. You

                        -To create new .j3m files, +To create new .j3m files in the jMonkeyEngine SDK,

                        1. Right-click the assets/Materials directory and choose New… > Other.
                          @@ -66,7 +71,7 @@ When the material is ready and saved into your projects assets directory, you ca

                          -In the jMonkeyPlatform +In the jMonkeyEngine SDK

                          1. Right-click the j3o file and select "Edit in SceneComposer"
                            @@ -102,9 +107,13 @@ See also
                          2. +
                          3. +
                          4. +
                          5. +
                          6. Neotexture (Procedural textures)
                          7. -

                            view online version

                            \ No newline at end of file +

                            view online version

                            \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/model_loader_and_viewer.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/model_loader_and_viewer.html index 3e1551eee..7f1007c3e 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/model_loader_and_viewer.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/model_loader_and_viewer.html @@ -1,10 +1,10 @@ -

                            jMonkeyPlatform: Importing and Viewing Models

                            +

                            jMonkeyEngine SDK: Importing and Viewing Models

                            -JMonkeyPlatform imports models from your project and stores them in the assets folder. The imported models are converted to a jME3 compatible binary format called .j3o. Double-click .j3o files in the jMonkeyPlatform to display them in the SceneViewer, or load them in-game using the AssetManager. +The jMonkeyEngine SDK imports models from your project and stores them in the assets folder. The imported models are converted to a jME3 compatible binary format called .j3o. Double-click .j3o files in the jMonkeyEngine SDK to display them in the SceneViewer, or load them in-game using the AssetManager.

                            @@ -22,11 +22,11 @@ Also, see this SDK includes a tool to install the correct exporter tools in Blender to export OgreXML files. To install the exporter, do the following:

                              -
                            1. Select "Tools"→"OgreXML"→"Install Blender OgreXML" in the jMonkeyPlatform Menu
                              +
                            2. Select "Tools"→"OgreXML"→"Install Blender OgreXML" in the jMonkeyEngine SDK Menu
                            3. If you are presented a filechooser, select the folder where your blender scripts reside
                            4. @@ -45,7 +45,7 @@ jMonkeyPlatform includes a tool to install the correct exporter tools in Blender

                              -jMonkeyPlatform includes a model importer tool that allows you to preview and import supported models into your jMonkeyEngine3 project. +jMonkeyEngine SDK includes a model importer tool that allows you to preview and import supported models into your jMonkeyEngine3 project.

                              @@ -153,11 +153,11 @@ Most plugins will deliver their own UI elements to modify the scene so the Scene

                              -Each jMP project has its own internal AssetManager that has the projects assets folder registered as a FileLocator. When the project is run, the assets folder is compressed into a jar file and added to the projects main jar classpath. This way the editors in jMP and the running game have the same asset folder structure. +Each jMonkeyEngine SDK project has its own internal AssetManager that has the projects assets folder registered as a FileLocator. When the project is run, the assets folder is compressed into a jar file and added to the projects main jar classpath. This way the editors in jMonkeyEngine SDK and the running game have the same asset folder structure.

                              -You might wonder why jMP requires you to copy the model that is to be converted to j3o into the assets folder before. The Model Import Tool also copies the model and associated files to the project directory before converting. To load the model it needs to be in a folder (or jar etc..) that belongs to the projects AssetManager root. To load a model from some other folder of the filesystem, that folder would have to be added to the AssetManager root. If every folder that contains a model was in the root of the AssetManager, all textures named "hull.jpg" for example would be the same for the AssetManager and it would only deliver the texture of the first model folder that was added. +You might wonder why jMonkeyEngine SDK requires you to copy the model that is to be converted to j3o into the assets folder before. The Model Import Tool also copies the model and associated files to the project directory before converting. To load the model it needs to be in a folder (or jar etc..) that belongs to the projects AssetManager root. To load a model from some other folder of the filesystem, that folder would have to be added to the AssetManager root. If every folder that contains a model was in the root of the AssetManager, all textures named "hull.jpg" for example would be the same for the AssetManager and it would only deliver the texture of the first model folder that was added.

                              @@ -166,4 +166,4 @@ To have a valid jME3 object, the paths to textures and other assets belonging to

                              -

                              view online version

                              \ No newline at end of file +

                              view online version

                              \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/project_creation.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/project_creation.html index 3d2ccc7c2..d3ecde1f7 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/project_creation.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/project_creation.html @@ -1,10 +1,10 @@ -

                              jMonkeyPlatform: Creating Projects

                              +

                              jMonkeyEngine SDK: Creating Projects

                              -The jMonkeyPlatform makes it easy to get started with developing 3-D games based on the jMonkeyEngine. +The jMonkeyEngine SDK makes it easy to get started with developing 3-D games based on the jMonkeyEngine.

                              @@ -84,15 +84,15 @@ Now let's have a look at the project's file structure in the File Expl
                            5. src – This directory corresponds to the Source Packages node. Your sources code goes here.
                            6. -
                            7. nbproject – This is meta data used by the jMonkeyPlatform (don't edit).
                              +
                            8. nbproject – This is meta data used by the jMonkeyEngine SDK (don't edit).
                            9. -
                            10. build.xml – This is an Ant build script that is hooked up to the clean/build/run/test actions in the jMonkeyPlatform. It loads a default build script, and allows you to further customize the build process. The Ant script also assures that you are able to clean/build/run/test your application outside of the jMonkeyPlatform – e.g. from the command line.
                              +
                            11. build.xml – This is an Ant build script that is hooked up to the clean/build/run/test actions in the jMonkeyEngine SDK. It loads a default build script, and allows you to further customize the build process. The Ant script also assures that you are able to clean/build/run/test your application outside of the jMonkeyEngine SDK – e.g. from the command line.
                            12. -
                            13. build – This directory contains the compiled classes. (Will be generated by the jMonkeyPlatform when you build the project.)
                              +
                            14. build – This directory contains the compiled classes. (Will be generated by the jMonkeyEngine SDK when you build the project.)
                            15. -
                            16. dist – This directory contains the executable JAR files. (Will be generated by the jMonkeyPlatform when you build the project.)
                              +
                            17. dist – This directory contains the executable JAR files. (Will be generated by the jMonkeyEngine SDK when you build the project.)
                            18. -
                            19. test – The jMonkeyPlatform will store JUnit tests here if you create any. (Optional.)
                              +
                            20. test – The jMonkeyEngine SDK will store JUnit tests here if you create any. (Optional.)
                            21. @@ -172,7 +172,7 @@ Thats it, your project can now use the external library.
                              • Creating new files and packages: Select the Source Packages node (or any of its subnodes), and press ctrl-N (File>New File): Use the New File wizard to create new Java classes, Java packages, Java beans, Swing forms, Junit files, JME3 Materials and Models, and many more.
                              • -
                              • Editing files: Open the Projects Explorer and double-click a Java file from the Source Packages to open it in the Editor. The jMonkeyPlatform Editor assists you in many ways, including Syntactic and semantic code coloring, code completion, and javadoc. (More...)
                                +
                              • Editing files: Open the Projects Explorer and double-click a Java file from the Source Packages to open it in the Editor. The jMonkeyEngine SDK Code Editor assists you in many ways, including Syntactic and semantic code coloring, code completion, and javadoc. (More...)
                              • Adding Assets:
                                  @@ -213,7 +213,7 @@ Thats it, your project can now use the external library.

                                  -Worried About Proprietary Lock-in? You are never locked into the jMonkeyPlatform: At any time, you can change into your project directory on the command line, and clean, build, and run your project, using non-proprietary Apache Ant commands: +Worried About Proprietary Lock-in? You are never locked into the jMonkeyEngine SDK: At any time, you can change into your project directory on the command line, and clean, build, and run your project, using non-proprietary Apache Ant commands:

                                  ant clean; ant jar; ant run;
                                  @@ -256,4 +256,4 @@ Thats it, your project can now use the external library.
                            -

                            view online version

                            \ No newline at end of file +

                            view online version

                            \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/scene_composer.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/scene_composer.html index f5679c95a..6c6f518bb 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/scene_composer.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/scene_composer.html @@ -1,10 +1,10 @@ -

                            Scene Composer

                            +

                            jMonkeyEngine SDK -- Scene Composer

                            -SceneComposer allows you to edit scenes stored in j3o files and add content or modify existing content. Please note that the Scene Composer and Explorer are a work in progress and will provide more powerful functions in the future. Also other plugins will allow creation of more specific game type scenes in jMP. +SceneComposer allows you to edit scenes stored in j3o files and add content or modify existing content. Please note that the Scene Composer and Explorer are a work in progress and will provide more powerful functions in the future. Also other plugins will allow creation of more specific game type scenes in jMonkeyEngine SDK.

                            @@ -40,7 +40,7 @@ In the SceneComposer toolbar are buttons to snap the camera to the cursor, snap

                            -jMP stores the scene in a j3o file, this binary file contains the whole scenegraph including all settings for spatials, materials, physics, effects etc. Textures are not stored in the j3o file but as absolute locators to the textures. +The jMonkeyEngine SDK stores the scene in a j3o file, this binary file contains the whole scenegraph including all settings for spatials, materials, physics, effects etc. Textures are not stored in the j3o file but as absolute locators to the textures.

                            @@ -195,4 +195,4 @@ Also note that although it its possible to directly link external model files (O

                            -

                            view online version

                            \ No newline at end of file +

                            view online version

                            \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/scene_explorer.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/scene_explorer.html index 82a401b2d..2c1918950 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/scene_explorer.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/scene_explorer.html @@ -1,7 +1,11 @@ -

                            jMonkeyPlatform: Scene Explorer

                            +

                            jMonkeyEngine SDK: Scene Explorer

                            +

                            + +

                            +

                            About the SceneExplorer window

                            @@ -13,7 +17,6 @@ The SceneExplorer gives you a structural overview of the currently edited scene

                            Most plugins will deliver their own UI elements to modify the scene so the SceneExplorer is more of a global tool. The simple SceneComposer however heavily relies on its functions as other plugins might too in the future. -

                            @@ -23,10 +26,13 @@ Most plugins will deliver their own UI elements to modify the scene so the Scene

                            - The SceneExplorer displays Nodes in a tree that represents the tree of Spatials in your scene. Spatial controls, lights and geometry meshes are also displayed in the tree.

                            +

                            +You open the SceneExplorer by viewing a model (j3o file or other) in the jMonkeyEngine SDK. +

                            +

                            Editing Objects in the scene

                            @@ -62,4 +68,4 @@ Right-click a Spatial or Node in the SceneExplorer to add other Spatials like Pa

                            -

                            view online version

                            \ No newline at end of file +

                            view online version

                            \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/terrain_editor.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/terrain_editor.html index 0996c78bf..279f93859 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/terrain_editor.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/terrain_editor.html @@ -4,22 +4,21 @@

                            The terrain editor lets you create, modify, and paint terrain. - +

                            -

                            Controls

                            +

                            Controls

                            Terrain controls are the same as the Scene Composer, you rotate the camera with the left mouse button and pan the camera with the right mouse button. Until you select one of the terrain tools in the toolbar, then the controls change for that tool. Then left mouse button will use that tool: painting, raising/lowering terrain, etc. The right mouse button might do something, depending on the tool. -

                            -

                            Creating Terrain

                            +

                            Creating Terrain

                            @@ -35,44 +34,40 @@ This will pop up the Create Terrain wizard that will walk you through the steps

                            -In order to see the terrain, you will need to add light to your scene. To do this right-click the root node in the SceneExplorer window and select "Add Light→Directional Light" - +In order to see the terrain, you will need to add light to your scene. To do this, right-click the root node in the SceneExplorer window and select "Add Light→Directional Light"

                            -
                            Step 1: Terrain Size
                            +

                            Step 1: Terrain Size

                            Here you determine the size of your terrain, the total size and the patch size. You should probably leave the patch size alone. But the total size should be defined; this is how big your terrain is. -

                            -
                            Step 2: Heightmap
                            +

                            Step 2: Heightmap

                            Here you can select a heightmap generation technique to give you a default/random look of the terrain. You can also select a heightmap image to pre-define how your terrain looks. By default, it will give you a flat terrain. -

                            -
                            Step 3: Alpha Image Detail
                            +

                            Step 3: Alpha Image Detail

                            This step determines how large the alpha blend images are for your terrain. The smaller the alpha image, the less detailed you can paint the terrain. Play around with this to see how big you need it to be. Remember that terrain does not have to be that detailed, and is often covered by vegetation, rocks, and other items. So having a really detailed texture is not always necessary. -

                            -

                            Modifying Terrain

                            +

                            Modifying Terrain

                            @@ -91,78 +86,80 @@ There are two sliders that affect how these tools operate:

                            Once a tool is selected, you will see the tool marker (now an ugly wire sphere) on the map where your mouse is. Click and drag on the terrain to see the tool change the height of the terrain. -

                            -

                            Painting Terrain

                            +

                            Painting Terrain

                            + Your terrain comes with one diffuse default texture, and you can have up to 12 total diffuse textures. It also allows you to add normal maps to each texture layer. There can be a maximum of 13 textures, including Diffuse and Normal (3 textures are taken up by alpha maps). +

                            + +

                            All of the textures can be controlled in the Texture Layer table by clicking on the textures. There are two sliders that affect how the paint tool operates:

                            • Radius: how big the brush is
                            • -
                            • Weight/Height: how much impact the brush has
                              +
                            • Weight/Height: how much impact the brush has.
                            -
                            Adding a new texture layer
                            +

                            Adding a new texture layer

                            -Adds a new texture layer to the terrain. The will be drawn over top of the other texture layers listed above it in the list.
                            - -
                            +Adds a new texture layer to the terrain. The will be drawn over top of the other texture layers listed above it in the list. +

                            +

                            +

                            -
                            Changing the diffuse texture
                            +

                            Changing the diffuse texture

                            -Click on the diffuse texture image in the texture table. This will pop up a window with the available textures in your assets directory.
                            - -
                            +Click on the diffuse texture image in the texture table. This will pop up a window with the available textures in your assets directory. +

                            +

                            +

                            -
                            Adding a normal map to the texture layer
                            +

                            Adding a normal map to the texture layer

                            When you add a texture layer, by default it does not add a normal map for you. To add one, click on the button next to the diffuse texture for that texture layer. This will pop up the texture browser. Select a texture and hit Ok, and you are done.
                            -
                            - - +

                            -
                            Removing a normal map from the texture layer
                            +

                            Removing a normal map from the texture layer

                            To remove a normal map from the texture layer, hit the normal map button for that texture layer again, and deselect the texture. Then hit Ok and the texture should be removed. -

                            -
                            Changing the texture scale
                            +

                            Changing the texture scale

                            @@ -172,47 +169,44 @@ The field in the table to the right of the diffuse and normal textures for your You will notice that the scale changes when you switch between Tri-Planar and normal texture mapping. Tri-planar mapping does not use the texture coordinates of the geometry, but real world coordinates. And because of this, in order for the texture to look the same when you switch between the two texture mapping methods, the terrain editor will automatically convert the scales for you. Essentially if your scale in normal texture coordinates is 16, then for tri-planar gets converted like this: 1/terrainSize/16 -

                            -
                            Tri-planar texture mapping
                            +

                            Tri-planar texture mapping

                            + Tri-planar texture mapping is recommended if you have lots of near-vertical terrain. With normal texture mapping the textures can look stretched because it is rendered on the one plane: X-Z. Tri-planar mapping renders the textures on three planes: X-Z, X-Y, Z-Y; and blends them together based on what plane the normal of the triangle is facing most on. This makes the terrain look much better, but it does have a performance hit! Here is an article on tri-planar mapping: -

                            -
                            Total texture count
                            +

                            Total texture count

                            Terrain will support a maximum of 12 diffuse texture. And a combined total of 13 diffuse and normal maps. Most video cards are limited to 16 texture units (textures), and 3 are used behind the scenes of the terrain material for alpha blending of the textures, so you are left with a maximum of 13 textures. -

                            -

                            Generating Terrain Entropies for LOD

                            +

                            Generating Terrain Entropies for LOD

                            If you are using the recommended PerspectiveLodCalculator for calculating LOD levels of the terrain, then you will want to pre-generate the entropy levels for the terrain. This is a slow process. If they are not pre-generated, the LOD control will generate them for you, but this will lag the user when they load the scene, and the terrain will flicker. Use the 'Generate Entropies' button to pre-generate the entropies for the terrain, they will be saved with it. Note that whenever you modify the height of the terrain, you should re-generate the entropies. Of course, don't do this every time, but maybe just before you are ready to send the map out for testing. -

                            -

                            Loading Terrain Into Your Game

                            +

                            Loading Terrain Into Your Game

                            @@ -224,4 +218,4 @@ When you want to load a scene into your game that has terrain, you have to set t lodControl.setCamera(getCamera());

                            -

                            view online version

                            \ No newline at end of file +

                            view online version

                            \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/troubleshooting.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/troubleshooting.html index e52ede8f0..5a9a58236 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/troubleshooting.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/troubleshooting.html @@ -8,11 +8,11 @@

                            -If jMonkeyPlatform cannot find a valid JDK although you have it installed you have to specify the location manually. +If jMonkeyEngine SDK cannot find a valid JDK although you have it installed you have to specify the location manually.

                            -To do that edit the file jmonkeyplatform.conf in the etc directory of your jMonkeyPlatform installation location. +To do that edit the file jmonkeyplatform.conf in the etc directory of your jMonkeyEngine SDK installation location. Mac users have to right-click the application and select "Show package contents" and then navigate to Contents/Resources/jmonkeyplatform.

                            @@ -22,9 +22,10 @@ Mac users have to right-click the application and select "Show package cont

                            +For a list of known issues and possible workarounds see the following link:

                            -

                            view online version

                            \ No newline at end of file +

                            view online version

                            \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/use_own_jme.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/use_own_jme.html index 3bd01bd65..001b6c4c7 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/use_own_jme.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/use_own_jme.html @@ -1,5 +1,5 @@ -

                            How to integrate your own jME3 compile in jMP projects

                            +

                            How to integrate your own jME3 compile in jMonkeyEngine SDK projects

                            1. @@ -35,4 +35,4 @@
                            -

                            view online version

                            \ No newline at end of file +

                            view online version

                            \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/vehicle_creator.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/vehicle_creator.html index fc579fb0f..7fae32e7b 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/vehicle_creator.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/vehicle_creator.html @@ -51,4 +51,4 @@ control.setPhysicsLocation(new Vector3f(10,2,10)); control.accelerate(100);
                            -

                            view online version

                            \ No newline at end of file +

                            view online version

                            \ No newline at end of file diff --git a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/version_control.html b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/version_control.html index 4bbb4c3b2..1b5d56d75 100644 --- a/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/version_control.html +++ b/sdk/jme3-core/javahelp/com/jme3/gde/core/docs/sdk/version_control.html @@ -1,19 +1,14 @@ -

                            jMonkeyPlatform: Version Control

                            +

                            jMonkeyEngine SDK: Version Control

                            -Whether you work in a development team or alone: File versioning is a handy method to keep your code consistent, compare files line-by-line, and even roll back unwanted changes. This documentation shows you how to make the most of the jMonkeyPlatform's integrated version control features for Subversion, Mercurial, and CVS. +Whether you work in a development team or alone: File versioning is a handy method to keep your code consistent, compare files line-by-line, and even roll back unwanted changes. This documentation shows you how to make the most of the SDK's integrated version control features for Subversion, Mercurial, and CVS.

                            -
                            - -

                            - -

                            -Note: Since the jMonkeyPlatform is based on the NetBeans Platform framework, you can learn about certain jMonkeyPlatform features by reading the corresponding NetBeans IDE tutorials (in the "see also links"). +Note: Since the jMonkeyEngine SDK is based on the NetBeans Platform framework, you can learn about certain jMonkeyEngine SDK features by reading the corresponding NetBeans IDE tutorials (in the "see also links").

                            @@ -23,7 +18,7 @@ Note: Since the jMonkeyPlatform is based on the NetBeans Platform framework, you

                            -The jMonkeyPlatform supports various Version Control Systems such as Subversion, Mercurial, and CVS. No matter which of them you use, they all share a common user interface. +The jMonkeyEngine SDK supports various Version Control Systems such as Subversion, Mercurial, and CVS. No matter which of them you use, they all share a common user interface.

                            @@ -62,7 +57,7 @@ Now you create a repository to store your project's files.

                              -
                            1. In the jMonkeyPlatform, right-click the project in the Projects window and choose Versioning > Import Into CVS/Subversion Repository (or initialize Mercurial Project, respectively).
                              +
                            2. In the jMonkeyEngine SDK, right-click the project in the Projects window and choose Versioning > Import Into CVS/Subversion Repository (or initialize Mercurial Project, respectively).
                              • Tip: If you haven't evaluated yet which system to choose, start with Subversion for now.
                              • @@ -154,7 +149,7 @@ Receiving the latest changes from the team's repository is referred to as <

                                Comparing and Reverting Changes

                                  -
                                • If you and another committer edited the same line, there is a conflict, and the jMonkeyPlatform will show an error message.
                                  +
                                • If you and another committer edited the same line, there is a conflict, and the jMonkeyEngine SDK will show an error message.
                                  • Right-click a file Choose Subversion > Resolve Conflict
                                      @@ -195,7 +190,7 @@ If you do not use any version control, you can still track changes in projects t
                                    1. You can also select any two files in the Project window and choose Tools > Diff to compare them.
                                    2. -
                                    3. Local History only works for files edited in jMonkeyPlatform Projects (It does not work for other files, e.g. in the Favorites window.)
                                      +
                                    4. Local History only works for files edited in jMonkeyEngine SDK Projects (It does not work for other files, e.g. in the Favorites window.)
                                  @@ -211,4 +206,4 @@ See also:
                                -

                                view online version

                                \ No newline at end of file +

                                view online version

                                \ No newline at end of file