Electronic Documentation for NeonJax3D Screen Saver
(Direct X 7 Version)
July 9th, 2002
Copyright (c) 2002 by Richard Goedeken
A product of Fascination Software Co.
This software (NeonJax3D Version 1.0) is copyrighted software. I give you (the LICENSEE) permission to freely copy and distribute this software in any manner to anyone (the RECIPIENTS) as long as the following two conditions are met:
Fascination Software, and Richard Goedeken, are not in any way liable for any damages incurred by the use of this software. The user assumes full responsibility for the use of this software.
This documentation file contains instructions for the operation and use of
the NeonJax3D Screen Saver V1.0 (Direct X 7 Version).
The NeonJax3D Screen Saver only requires a single file, called "NeonJax3D.scr". This contains the executable code and data for the NeonJax3D Screen Saver program.
When you have the correct NeonJax3D.scr file in the Windows Root Directory, right-click the Windows desktop and select "Properties" from the drop-down context list. Select the "Screen Saver" tab at the top of the window that appears, then pull down the drop-down list and select "NeonJax3D" from the list of screen savers. You may now press "OK" to close this window, or you may press the "Settings" button to further customize NeonJax3D.
After installation, the NeonJax3D Screen Saver will be set up to 'save' your
Windows screen. For advanced usage topics, refer to the mini-FAQ below for
information on the full functionality of the NeonJax3D Screen Saver.
Q0. What's so cool about NeonJax3D, anyway?
NeonJax3D has many cool features. To begin, it's completely free to use and distribute. Why should you pay money for a screen saver? It's also very small and well-contained. In fact, only a single file is required for the screen saver. Another feature is that NeonJax3D renders the demo in software, so no special 3D hardware is required. This means that NeonJax3D will run on Windows NT 4.0 systems with old video cards. It's written in MMX-enhanced assembly language, so it's fast, and it looks very cool.
NeonJax3D supports Nvidia-based LCD glasses such as the ELSA 3D Revelator for an awesome mind-warping 3D experience. Finally, this screen saver has the ability to load and view user-created 3D demos, and all of the tools necessary to generate these 3D scenes are available freely from: www.fascinationsoftware.com
Q1. How do I change the settings for NeonJax3D?
To change the NeonJax3D settings, you must go to the Windows Display Properties, either by:
Next, select the 'Screen Saver' tab at the top of the Windows Display Properties window. The NeonJax3D screen saver should be selected in the drop-down list of screen savers. Click the 'Settings' button next to this drop-down list to open the NeonJax3D Screen Saver settings window.
Q2. What does the 'Frame Rate' option do, and how does it work?
The Frame Rate option specifies the rate at which NeonJax3D *attempts* to draw and display the demo. If the Frame Rate is set to a high number and your computer doesn't have enough processing power to display at the desired rate, NeonJax3D will slow down and miss frames. For each missed frame, a small white dot is drawn in the upper-left corner of the full- screen demo.
If the user enters '0' for the Frame Rate option, then the 3D demo will run at its maximum speed and it will never mark missed frames.
Q3. What does the 'World Name' option do, and how does it work?
The World Name option allows the user to view a custom .J3D demo file.
To use this feature, simply use the Windows File Explorer to move the desired .J3D file to the Windows Root Directory (see Installation). Then enter the filename of the new demo (without the extension, such as 'Example_5') in the World Name option of the NeonJax3D Settings. NeonJax3D will then be set up to display this new demo.
If NeonJax3D cannot find a file with the specified filename and the .J3D extension in the Windows Root Directory, it will display the default (built-in) demo.
.J3D files are binary files created by the NeonJax3D World Compiler program, which is available freely from www.fascinationsoftware.com. The World Compiler is one of the tools included with the NeonJax3D development kit (SDK). The World Compiler accepts a simple C-like source text which describes the 3-D objects and their movements, and creates the .J3D files as output. The NeonJax3D SDK includes 5 example files to start your 3D screen saving creations!
Q4. What does the 'Random World' option do?
When the 'Random World' option is enabled, NeonJax3D will search through the Windows Root Directory for all of the files which are named *.J3D and have the proper J3D headers, and each time that your computer goes into screen-save mode, it will randomly pick one to display. Use this to get some variation in your 3D screen-saving.
If NeonJax3D cannot find any proper files with the .J3D extension in the Windows Root Directory, it will display the default (built-in) demo.
See the answer to Q3 for information on creating J3D files.
Q5. What does the 'Restart demo every time' option do?
NeonJax3D has the ability to save the exact state of the demo when returning to Windows, and to load this state information when starting. Using this mechanism, it is possible to effectively continue a demo for hundreds of millions, or even billions of frames. The built-in demo inside NeonJax3D.scr is cyclical, with the morphing cycle of the 1,000 Points of Light object repeating every 5-10 minutes. However, each of the command streams in the demo is a different length, so the demo is slightly different after each cycle and probably wouldn't perfectly repeat in a million years.
So it's kind of cool to let the built-in demo run continuously (by turning this option OFF) and see how it changes day to day. It may also be cool to watch other (custom) demos this way.
By turning ON the 'Restart demo every time' option, the NeonJax3D Screen Saver will *not* save or load this state data, and the demo will begin from the start each time it is started.
By turning OFF the 'Restart demo every time' option, the NeonJax3D Screen Saver *will* save and load the state of the demo. Note that this will only work correctly if the 'Random World' option is disabled. When the 'Random World' option is enabled, the demo state will only be re-loaded if the same world gets randomly selected to be displayed twice in a row.
Q6. What does the 'Stereo3D' option do, and how does it work?
The Stereo3D option allows users of Nvidia-based graphics cards with Stereo LCD Glasses to view the 3D demo in true 3D. The LCD glasses work by alternating the two lenses between transparent and black opaque very quickly, and synchronizing this with the frame rate of the monitor. In that way the NeonJax3D demo displays two unique images simultaneously but a user wearing the LCD glasses sees one unique image in each eye, and the result is a powerful illusion of 3D objects coming out of the screen.
This option is available in this version (Direct X 7) of the NeonJax3D Screen Saver. However the Stereo3D option will not be ENABLED, and you will not be able to activate it, unless several conditions are met. For more information see the answer to Q7.
Q7. Why can't I click on the 'Stereo3D' option?
In order for NeonJax3D to enable the 'Stereo3D' option, several conditions must be met:
If all four of these conditions are met, then NeonJax3D should enable the 'Stereo3D' option in the NeonJax3D Settings window, and the user may then activate this option by clicking on the Stereo3D check box and clicking the 'OK' button.
If these four conditions are not met, then NeonJax3D will disable (grey out) the Stereo3D option in the Settings window and the user will not be able to activate it.
Q8. What does the 'Refresh' option do?
If the 'Stereo3D' option is enabled and selected, then the 'Refresh' option will be enabled. This option allows the user to select an arbitrary Vertical Retrace frequency for the monitor. This is useful because during Stereo3D operation with LCD glasses, the effective frame rate which is seen by each eye is *half* of the monitor's Vertical Retrace frequency. So if the monitor/video card are set to 60 Hz, then each of the user's eyes will view the demo at 30Hz, and some flickering will be visible. To correct this and make the demo appear smooth, and reduce the distraction caused by flickering, set the 'Refresh' option to 100 or 120 (hz).
If your monitor or video card are incapable of using the specified refresh rate, NeonJax3D will use the default (current) rate instead.
Some refresh rates which are typically supported by modern video cards and monitors are: 60, 70, 72, 75, 100, and 120.
Q9. What screen mode and resolution does NeonJax3D use?
NeonJax3D uses the 640x480 resolution with 16-bit color depth. This video mode is required for the demo to run. If your video card only supports 256 colors, or does not support the 16-bit color mode, then NeonJax3D WILL NOT WORK! If your video card does not support the 640x480 resolution, then NeonJax3D WILL NOT WORK!