Dylan's OpenGl Dynamic Textured Cube by Dylan Hoen http://www.dylan.hoen.ca/ -check out my home page for the latest version of this plugin and other interesting things. Special thanks to: Fizzy (Marty), http://www.csc.uvic.ca/~mdill/ , for his C++ and OpenGl expertise. Borg No. One (Locutus) for his Nullsoft PIMP Installer expertise. NeHe Productions, http://nehe.gamedev.net/ , for their OpenGl tutorials. Nullsoft, http://www.winamp.com/ , for Winamp and their example plugin interface. Release History: 105 (Current Version): -Bug fixes -new features: -k freeses the dynamic texture -M increases dynamic texture resolution -N splits the dynamic texture calculations between 3 frames for increased frame rate with high resolution textures -P uses the rendered scene as a texture in the scene. -Y Stretches the dynamic texture across the screen -Still Doesn't have a proper configuration GUI, but it now tells you your current configuration before asking you if you want to re-configure. -Compilable to an exe, but the exe doesn't work yet (I had the exe working on the version that I lost when my hard drive died) 104 (Version I restored from my webserver when my 80 gig hard drive died): -Bug fixes -Enable/Disable spinning -New presets -Enable/Disable Frame Rate Limiter -Uses less CPU power when frame rate limiter is enabled -Uses Nullsoft PIMP Installer -Complete Source-Code Rewrite (Split into multaple .cpp files now) -This improved readme file -Still Doesn't have a proper configuration GUI 100 (Original Plugin) Plugin Description: This plugin displays dynamic Geiss-like textures on the faces of a cube spinning in space. The background sky can also be textured with these dynamic textures. The cube grows and shrinks to the beat. On some songs the beat detecting is very effective, but on others, the beat is too fast, or doesn't line up with the the frames drawn on screen. To use this plugin, you will need an OpenGl video accelerator card, and the OpenGl driver installed properly for it. I've tested the plugin on a Geforce and Radeon, but it should work on some older video cards, like a TNT, and all newer video cards. Starting the plugin: If the plugin installed correctly, close and restart Winamp. Right click near the top left hand corner of Winamp where the screen with the time and mini visualization is. A menu should pop up. Click on "Select Plugin..." Select "Dylan's OpenGl Dynamic Textured Cube [vis_DylansGlCube.dll]" Click on Configure: The plugin will pop up several Yes/No questions. I'm planning on making a proper GUI for the configuration, but GUIs in C++ aren't as strait forward as they were in java. Color depth: I do all my internal calculations in 32 bit color, so unless you have a 3dfx card, or an old video card, select 32 bit color. Full Screen Mode: Some old video cards have bugs going into full screen mode. I personally like full screen mode better than windowed mode; You get to see the full effect of the plugin. Show mouse in full screen mode: This is mostly used for debugging, and is probably best turned off. Selecting resolution: If your video card supports it, I would select the same resolution as your desk top, or at least 1024*768. There will be 3 popup questions, each dividing the list of resolutions by 2 until it has chosen the resolution that you want. Now that the configuration is complete, close the preferences window. Now start a song and make sure it is playing. Now double click on the time/mini-visualization window near the top left hand corner of Winamp and my plugin should start. Controls (when the plugin is running): Escape key quits the plugin. If the plugin appears to be frozen, just hold the escape key down, and it should quit within a minute. H - (Help) displays/hides text on the screen, which gives you the internal controls. Number keys at top of keyboard (Not number pad at side) 1-9, 0 turns on different presets of settings that I thought went well together. A - Enable/Disable alpha blended transparent textures. S - Show/Hide Cube (Conflicts with Shuffle in Winamp) D - Show/Hide Debugging text F - Show/Hide Frame rate G - Change background Sky texture R - Enable/Disable spinning T - Enable/Disable Frame rate limiter To Programmers: Dylan Hoen's first Winamp Plugin: I took the example Winamp plugin source code off of the Winamp home page and combined it with source code from the OpenGl tutorials at: http://nehe.gamedev.net/ along with a lot of my own source code to make this plugin. The source code should have been left in your Winamp/Plugins/Source/vis_DylansGlCube104source/ directory by the installer. The source code is free for you to use, but if you release a product that uses this source code, it would be nice if you gave an acknowledgment that part of the code came from me. compile.bat needs visual C++ installed to work output.txt is the output of compile.bat with your compiler error messages vis_DylansGlCube.cpp is the main source file containing the the code that interacts with Winamp and the code that initializes the plugin and OpenGl. Vis.h is the unaltered Vis.h that came with the example Winamp plugin from winamp.com GlFunctions.cpp contains some generic OpenGl functions that aren't related to the initialization of OpenGl. DylanTime.cpp contains some functions for getting the time, and calculating the frame rate. DylanDraw.cpp is where most of my programming is for what you see on the screen. vis_DylansGlCube - Old Source Code.cpp is the old version of my plugin when everything was in one source file. I kept it because I had a bunch of features in the old version that I might want to add to the new version. For more updates go to my home page: http://www.dylan.hoen.ca/