****************************************************************** * NeL plug-ins for 3DSMAX 4.2 + MSVC.NET (VC7) compilation notes * ****************************************************************** ** DISTRIBUTION NOTES ** Given that Max plug-ins are linked to the 3DSMax SDK (which is not Gnu GPL) and to NeL (which is Gnu GPL), anyone distributing plug-ins in binary form will be in breach of the Gnu GPL. In English than means that you shouldn't distribute the plug-ins as binaries. You are, of course, free to distribute the source code. THIS PLUGIN HAVE BEEN TESTED ON 3DSMAX3.1 WITH CHARACTER STUDIO 3. 1. Max/MaxSDK setup ---------------- You must install the MaxSDK on your machine. Let's say that is the installation path of your 3DSMax software. You must add the following C++ paths from the global settings of VC7 (Tools/Options/Projects/VC++ Directories): Library files : \Lib Include files : \Include \Include\Maxscrpt Due to a conflict between a NT's include file and a Maxscript one (), you must insert the Max include files BEFORE any reference to the PlatformSDK includes. Upon compilation, the plugins and needed DLLs will all be output in the 'code/nel/lib7/' folder. Update your /plugin.ini file to add a this plugin path. Example : [Directories] Standard MAX plug-ins=C:\3dsmax42\StdPlugs Additional MAX plug-ins=C:\3dsmax42\plugins NeL plug-ins=C:\nel_cvs\code\nel\lib7 Finally, you'll have to install some startup scripts. They reside in the 'code/nel/tools/3d/plugin_max/script/startup/' folder, and they have to be copied in '/scripts/startup'. Note (2002/08/07) : nel_material.ms and nel_multi_set.ms do not run well under Max4.2 for now, you should currently ignore them (don't copy them). 2. Compilation ----------- Open 'code/nel/tools/3d/plugin_max/plugin_max_public.sln'. It will build several targets, along some NeL dependencies. You should see the following files in 'code/nel/lib7/' : (Shared components :) nel_3dsmax_shared.dll object_viewer.dll (Max plugins :) nelexport.dlu neltileutility.dlu nelconvertpatch.dlm The part depends on your build profile ('rd' for ReleaseDebug, 'df' for 'DebugFast', etc). 3. Runtime ------- In order that all DLL can be found at load time, update your PATH environment variable to add the full name (ie. including the drive letter) of your 'code/nel/lib7/' path. NT/2K/XP users : Config Panel/System/'Advanced' tab/'Environment variables' button. PATH should be defined in the global variables. You don't have to reboot, but you must restart the current running applications in order they notice this change. Win95/98/Me users : edit your PATH in C:\AUTOEXEC.BAT, then reboot (no alternative). Last step : the object viewer needs a config file at runtime, use the one provided with the distribution. Copy 'code/nel/tools/3d/object_viewer/object_viewer.cfg' into your 'code/nel/lib7/' path (side by side with the Max plugins). You may edit it as fit. 4. Simple test ----------- Launch 3DSMax. It should load the nel_* startup scripts and maybe generate some errors due to Maxscript differences between 3.x and 4.x. You can 'safely' ignore them (for now). Create a simple primitive, like a 'teapot' : select 'teapot' from the primitive tab on the right, then click on the viewport to place it and size it. Select the 'tool tab' (little hammer, rightmost), click the 'More' button. The dialog should show a list of plugins, 'NeL Export' and 'NeL Tile Bank' being among them. Select 'NeL Export'. Now click on the 'View scene' button in the bottom right panel. You should see the object viewer popup with a gray teapot. Max navigations shortcuts are available (Ctrl/Alt + middle mouse button, etc).