Graphics.Release24beta161216 - lordmundi/wikidoctest GitHub Wiki
EDGE v2.4_BETA_161216 Release Notes
« | EDGE User’s Guide | »
On this page… (hide)
- 1. Patches
- 2. Upgrading (please read)
- 3. Summary of Changes
- 3.1 Procedural Noise Capability on Planet Layers
- 3.2 Performance Profiling Capability
- 3.3 64-bit DCOMM Libraries for Mac and Windows
- 3.4 Higher Performance from Caching Web Commanding Server
- 3.5 Toggle Fullscreen at Run-time
- 3.6 DCOMM Debugging Capability Added
- 3.7 New Wavefront (OBJ) Model Loader Capability
- 3.8 Dynamic Cone Drawing Capability
- 3.9 Trick 15/17 support
- 3.10 New dsp_info plugin
- 3.11 Node dialog changes to indicate node attitude order
- 3.12 Configurable anti-aliasing for offline dsp_poster2 images
- 3.13 Low latency Video Streaming
- 3.14 Image Distortion Capability
- 3.15 Updated ISS model
- 4. Installation
- 4.1 Linux and Mac
- 4.2 Windows
- 4.3 To integrate into your sim:
- 5. Fixes and Enhancements
- 6. Known Issues
NOTE: These are the release notes for EDGE version v2.4_BETA_161216. You can find the release notes for other versions here.
1. Patches
No patches exist for this version yet.
2. Upgrading (please read)
While EDGE v2.4_BETA_161216 is considered a fairly significant release in terms of new features and compatibility issues, most projects should be able to use their 2.3 userdata directories without much interruption. Follow the install instructions in this document and use the "USERDATA" environment variable to point to your userdata directory before starting EDGE (exactly as was done in previous versions). For windows users, the USERDATA directory is usually pointed to in the .bat file used to startup EDGE.
-
Base cache updates require deleting USERDATA update caches
- With the base model cache being updated, the update cache files that user's will have in their $USERDATA/cache folders will not be compatible with EDGE v2.4_BETA_161216. As you bring over your existing USERDATA to EDGE v2.4_BETA_161216, be sure and delete this update cache file to allow it to be rebuilt the next time you gracefully exit EDGE. If you don't do this, symptoms will include odd geometry with odd colors or crazy lighting. Delete your $USERDATA/cache/user_cache.update files if upgrading to EDGE v2.4_BETA_161216! Keep in mind, to rebuild your cache file, all of the model files referenced in the scene requires that those model files be present and readable.
-
The latest ISS model requires more resources
- The ISS model in EDGE has been updated to the latest configuration which includes more modules and tons more cables and things like that. All of that adds up to more polygons and a bit more resource requirements on EDGE. This would only apply to scenes that load the ISS model.
-
The CCTV plugin has been removed from loading by default.
- If you were relying on the CCTV plugin (for example to enforce a 4:3 aspect ratio) and not specifically adding it into your display context, you will need to make sure to add it into your display context in the plugins block. It is still there commented out in cev.cfg and blank.cfg so you can use that as a guide.
3. Summary of Changes
We are excited to release EDGE v2.4_BETA_161216 (codenamed "cooks"). Changes are many. See the full list in the "Fixes and Enhancements" below. Some of the most notable changes are:
Lunar regolith in EDGE v2.4 when MOON_EFFECTS are turned on
3.1 Procedural Noise Capability on Planet Layers
Often time, pseudo-random noise is used to add detail procedurally in shaders. This capability now exists in EDGE v2.4_BETA_161216, and it has a sample implementation delivered for the Moon ground layer. You can enable this effect from the Moon shader by making the node "MOON_EFFECTS" visible. For more details, see issue Issues.00507
3.2 Performance Profiling Capability
Running EDGE with the "-timing" command line switch will print out timing metrics on exit. You can also print timing information and reset it using tcl commands. Finally, you can instrument a specific section of code with a simple macro in your plugin. For more details, see issue Issues.00204.
3.3 64-bit DCOMM Libraries for Mac and Windows
DCOMM libraries for Mac and Windows are now available in 64 bit!
3.4 Higher Performance from Caching Web Commanding Server
For folks running the Web Commanding Server where they may be a high number of requests, or a large number of clients, a new caching capability has been added. If the same request comes more than once before the expiration period has elapsed, the cached result will be returned. Many default callbacks have expiration times appropriate for how often the data changes. Similarly, users constructing their own web resources can set the expiration for each resource however they want. For more details, see issue Issues.00486.
New menu allows the user to toggle the menu bar and fullscreen.
3.5 Toggle Fullscreen at Run-time
Running EDGE with the "-fullscreen" and "-noborder" command line options will allow you to run in a complete fullscreen mode with no window decorations. However, if you wish to also retain keyboard and mouse window focus, this is not effective. A new interactive method has been added in the right-click menu to let the user toggle the menu bar and fullscreen while retaining the ability to use the mouse and fly the camera with the keyboard. For more details, see issue Issues.00502.
3.6 DCOMM Debugging Capability Added
Two of the most common issues when dealing with DCOMM are nodes not being sent out when they are expected to be, or nodes being sent out when they aren't expected (sometimes leading to a performance issue). With this new capability, you can now make a call to set a "debug node" and see a printout any time that node is sent out over DCOMM. You can also set a special node name to see all outgoing nodes printed out. See issue Issues.00504 for more details.
3.7 New Wavefront (OBJ) Model Loader Capability
Wavefront models (usually a .obj extension) are very popular. With the release, we include a new model loading capability to support loading obj files and the associate material (.mtl) files. This capability is in beta and has some limitations, but the source is provided for you to enhance and fix as needed. For more details, see issue Issues.00541.
New coneatron plugin to dynamically draw cones
3.8 Dynamic Cone Drawing Capability
Often times in scenes, especially those with space vehicles, it is nice to be able to visually inspect some envelope or corridor. The new dsp_coneatron plugin in EDGE v2.4_BETA_161216 allows the user to use a GUI to dynamically draw a cone in the scene and then export that cone to a model file for use later. To see more info on the coneatron plugin, read here: Graphics.EDGEConeatronPluginReference
3.9 Trick 15/17 support
Support for Trick 15/17 simulations has been added to the simdata plugin. This should allow users to hook up to live Trick 15/17 simulations as well as load recorded data. As Trick 17 is only beginning to be used, there has been limited testing so please let us know if you run into any issues.
3.10 New dsp_info plugin
Sometimes more information about a node is needed than the doug.node command can provide. With the dsp_info plugin and the "dsp_info.node" tcl command you can now query things such as what model filename(s) a node is using, what .str file it was loaded from, what the relative position of the node is relative to another node, and what the model scale is. You can find documentation on using the new dsp_info plugin here: Graphics.EDGEInfoPluginReference
Node Order field in dialog for non-PYR nodes.
3.11 Node dialog changes to indicate node attitude order
It is common for most nodes in EDGE to use PYR sequence for Euler angles. However, occasionally nodes will use other sequences, such as PRY for the EARTH_BODY_REF node. This update causes the node edit dialog to show an extra field when the order is not PYR. Otherwise, it will look the same.
3.12 Configurable anti-aliasing for offline dsp_poster2 images
The poster2 plugin is used for offline images for things like screenshots, and for frames of movies. The latest update let's user configure super-sampling and multi-sampling of the images, which is very useful for rendering high quality posters and movies. See Issues.00544 for more information and the tcl commands that are available.
3.13 Low latency Video Streaming
Previous releases of EDGE introduced video streaming such as the MJPEG stream to a web browser. In this version, a new low-latency version of streaming is added via the PixelStream plugin. It has the advantage of having a very low latency, however, as the packet format is not a particular standard, it will require a custom client to be used to render the received video. There is an example client included for linux and mac. You can read more about the PixelStream capability here: Graphics.PixelstreamPlugin.
Example distortion using the dsp_distort2 plugin.
3.14 Image Distortion Capability
Occasionally you may want to distort the images coming out of EDGE - for example to perform distortion correction, or to model the characteristics of a particular camera. A completely configurable image distortion capability (both from offline images from the dsp_poster2 plugin and real-time images in the EDGE window) is provided via the dsp_distort2 plugin. You can read about the dsp_distort2 plugin here: Graphics.PerformImageDistortion.
3.15 Updated ISS model
The International Space Station model that we include with EDGE has been updated to reflect the Stage 50–6 configuration. New visiting vehicle models are also included. Not all of the visiting vehicles are shown by default, but they can be toggled on and off using the Reconfig and Toggle menus in EDGE.
4. Installation
To install:
4.1 Linux and Mac
- Unzip the "EDGE_v2.4_BETA_161216.zip" file.
- Change into the EDGE_v2.4_BETA_161216 directory and run "./run_graphics"
- Optionally, run "./run_benchmarks" to get a performance assessment and mail in the results
That's it. As mentioned above, Linux and Mac users can also type "./run_benchmarks" to get a performance assessment of your machine. Email in your benchmark results to help us measure the effects of different drivers, kernel versions, etc., or just to brag about your fancy new hardware.
NOTE: Obviously the support libraries that are installed can vary widely from machine to machine. (There are some install recipes for various linux distros below.) EDGE is 32 bit process, but it runs fine on 64 bit machines. The only requirement is that the 32 bit system libraries it needs are available. We haven't run into any situations where any missing 32 bit libraries aren't easily installable with yum or apt-get in most linux distributions. For example, some common packages you may need to install are (package names taken from red-hat based flavor - you may have adjust for debian or others):
- glibc.i686
- avahi-libs.i686 (sometimes called avahi-devel.i386)
- mesa-libglu.i686 (sometimes called mesa-libGLU.i386)
- libXmu.i686 (sometimes called libXmu.i386)
- libXScrnSaver.i686 (sometimes called libXScrnSaver.i386)
- libXft.i686 (sometimes called libXft.i386)
- libjpeg.i686 (sometimes called libjpeg.i386)
- glx-utils.i686
Note the .i686 suffix to force it to install the 32 bit version. Also note that some folks have much better success by making sure you do a full "yum update" before trying to install these libraries. If EDGE gives you an error about a missing library, you can find what package provides them using yum commands such as "yum whatprovides libXss.so.1" and installing the 32 bit version. For Centos 5, I used the following yum line: "yum install avahi-devel.i386 mesa-libGLU.i386 libXmu.i386 libXScrnSaver.i386 libXft.i386 libjpeg.i386" —frankie March 28, 2012, at 11:05 AM
For Scientific Linux 6, these became .i686, so I used the following yum line:
yum install avahi-devel.i686 mesa-libGLU.i686 libXmu.i686 libXScrnSaver.i686 libXft.i686 libjpeg.i686 freetype-devel.i686 cairo.i686 libstdc++.i686
On Scientific Linux 6, I also have to make the following symbolic links in order to compile code in src.dist/plugins folder —Zuqunli April 21, 2016, at 1:55 PM
cd /usr/lib
sudo ln -s freetype.so.6.3.22 freetype.so
sudo ln -s libcairo.so.2.10800.8 libcairo.so
sudo ln -s libstdc++.so.6.0.13 libstdc++.so
For Ubuntu 16.04 64 bit, I have used:
sudo dpkg --add-architecture i386
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386 libglu1-mesa:i386
sudo apt-get install libxmu6:i386 libxss1:i386 libxft2:i386 tcsh libx11-dev:i386 libc6-dev-i386
sudo apt-get install mesa-common-dev:i386 libglu1-mesa-dev:i386 g++-multilib libxt-dev:i386
—frankie December 21, 2016, at 09:49 AM
Most clean debian-based distros will need the HOST environment variable:
export HOST=Linux_FC3
—mghart April 27, 2017
4.2 Windows
Eventually we want to have a nice installer for Windows. For now, do the following:
- Unzip the "EDGE_v2.4_BETA_161216.zip" file.
- Double click "run_graphics.bat" to start EDGE.
4.3 To integrate into your sim:
- For simple desktop integration with a TRICK simulation, try using the simdata plugin found under the "Options" menu. You can read more about this on the Graphics.DspSimdataNew page. This supports both live sims and post-sim visualization of recorded data.
- If you want to integrate a Trick simulation, or any other external program using the DCOMM library, see the DCOMM Light Client page.
5. Fixes and Enhancements
Will add this in when we make a full release
6. Known Issues
Will add this in when we make a full release
« | EDGE User’s Guide | »