In terms of what it takes to get geometry from Max into Radiant, all you need to do is export to an .ASE file. The only restrictions that I’m aware of are that you cannot have submaterials in your scene, meaning that if you want a single object to have multiple materials assigned to various polygons, you need to first detach them into separate objects, otherwise Max will generate submaterials in your exported file.
Once you’ve exported the .ASE file, you need to change the paths in the materials to be relative to baseq3. .ASE files are just text files, so you can open it up in a text editor and directly edit things. Open it, and look through the *MATERIAL_LIST structure. For each *MATERIAL definition, change *MATERIAL_NAME and *MAP_NAME to point to the relative path of your texture or shader (if it is a plain image file, *do not* include the extension here). For each *BITMAP, also change the path to be relative, but you can keep the extension. I included all of the .ASE files in the .pk3, so feel free to open them up to see what I mean.
In terms of meshing models created with Max with geometry created in Radiant, this is really tricky when you’re dealing with curves, because of two main reasons. First is that Radiant’s curves and Max’s curves do not produce the same intermediate vertex coordinates (if you overlaid a curve created in each program that had the same dimensions and same number of subdivisions you would notice that they differ). Secondly, curves have in-game LOD that cause them to change in number of subdivisions as the player’s distance to them changes, while static meshes will not change, and this will create cracks in between the geometry.
My solution to this problem consisted of two things. One was that I made curves that were to mesh with modeled curves static (i.e. I chose a suitable number of subdivisions that would look decent up close but not be too costly and compiled the curve into an ASE itself using Q3Map2). This took care of the LOD problem.
The second part was that I created any curves I needed using Quake4’s editor, and exported these to .obj files, which could then be imported into Max. This was done because I was unable to find an ASE importer for Max that would read geometry created by Q3Map2 (although one might exist, I’m not sure). Also, Q4’s editor allows you to specify the number of subdivisions on a patch, which was handy for syncing up curves with those created inside of GtkRadiant.
For example, in the curved wall pictured above, the main outline of the wall was created from two patches in Q4Edit, and the windows were created in Max by deleting specific chunks of quads from the interior and exterior, then connecting the resulting window outlines with new polygons.
Hope that helps, let me know if you have problems. š
can u explain the process of modelling parts of a map in max and getting it into radiant? thx
In terms of what it takes to get geometry from Max into Radiant, all you need to do is export to an .ASE file. The only restrictions that I’m aware of are that you cannot have submaterials in your scene, meaning that if you want a single object to have multiple materials assigned to various polygons, you need to first detach them into separate objects, otherwise Max will generate submaterials in your exported file.
Once you’ve exported the .ASE file, you need to change the paths in the materials to be relative to baseq3. .ASE files are just text files, so you can open it up in a text editor and directly edit things. Open it, and look through the *MATERIAL_LIST structure. For each *MATERIAL definition, change *MATERIAL_NAME and *MAP_NAME to point to the relative path of your texture or shader (if it is a plain image file, *do not* include the extension here). For each *BITMAP, also change the path to be relative, but you can keep the extension. I included all of the .ASE files in the .pk3, so feel free to open them up to see what I mean.
In terms of meshing models created with Max with geometry created in Radiant, this is really tricky when you’re dealing with curves, because of two main reasons. First is that Radiant’s curves and Max’s curves do not produce the same intermediate vertex coordinates (if you overlaid a curve created in each program that had the same dimensions and same number of subdivisions you would notice that they differ). Secondly, curves have in-game LOD that cause them to change in number of subdivisions as the player’s distance to them changes, while static meshes will not change, and this will create cracks in between the geometry.
My solution to this problem consisted of two things. One was that I made curves that were to mesh with modeled curves static (i.e. I chose a suitable number of subdivisions that would look decent up close but not be too costly and compiled the curve into an ASE itself using Q3Map2). This took care of the LOD problem.
The second part was that I created any curves I needed using Quake4’s editor, and exported these to .obj files, which could then be imported into Max. This was done because I was unable to find an ASE importer for Max that would read geometry created by Q3Map2 (although one might exist, I’m not sure). Also, Q4’s editor allows you to specify the number of subdivisions on a patch, which was handy for syncing up curves with those created inside of GtkRadiant.
For example, in the curved wall pictured above, the main outline of the wall was created from two patches in Q4Edit, and the windows were created in Max by deleting specific chunks of quads from the interior and exterior, then connecting the resulting window outlines with new polygons.
Hope that helps, let me know if you have problems. š
neat, thanks!