Input File
source "UNSET" (default)
source "C:\yourInputFile.map" (absolute)
source "YourMaps\yourInputFile.map" (relative for C:\Map2Curve\YourMaps\yourInputFile.map)
The input file type must be in MAP format (GoldSrc and id Tech) at the moment. It should contain either world brushes, solid entities or point entities that correspond to Map2Curves requirements.
Input map requirements
- Align your scene along the x-axis
- Brushes can have any length on x-axis
- Brushes can be world or solid-entities (entity is recommended)
- Point-entities will be treaded as Detail Objects
- For proper texture shift calculation, unused faces should have NULL or similar texture applied
Amount of faces per brush | Amount of vertices per face | |
Body-Faces | any | 4 |
Cut-Faces | 2 per Brush | any |
Input map examples
Brushes fit for triangulation
Sometimes it might be necessary for Map2Curve to triangulate the brushes of a curve.
Situations that require triangulation are height+ramp, “snap to grid” and sheared texture mapping.
For this to work efficiently on complex objects like cylinders as well, they should be setup similar to figure 2 or 3.
Object made from one brush only.
Recommended when triangulation isn’t needed at all.
When triangulation is necessary, complex brushes like this will be turned into many spike brushes (very inefficient, not recommended).
Object divided into several brushes.
Ideal for triangulation, more efficient than figure 3.
Object divided into even more brushes/wedges.
Also suited for triangulation. More flexible than figure 2, but uses more brushes.
Allows for hollow objects.
Output File
target "UNSET" (default)
target "C:\yourOutputFile.map"
target "YourMaps\yourOutputFile.map" (relative for C:\Map2Curve\YourMaps\yourOutputFile.map)
The generated curve can be exported to 3 formats atm: MAP, RMF and OBJ.
Output File Settings
Export to Map file format
map 0
- MAP (GoldSrc and id Tech) and RMF (Valves rich map format) are both suited for leveldesign purposes.
- MAP can be used for both GoldSrc and Quake mapping, but due to it’s simple architecture of 3 vertices per face, complex geometry might not get reconstructed as intended by any editor.
Export to RMF file format
rmf 1
RMF ensures a higher precision when opened in a GoldSrc editor like Hammer 3.x with no floating point fix, as it always saves all vertices of a face.
Export to OBJ file format
obj 0
OBJ support is rudimentary at the moment and can be used for development purposes.
Append result to existing output file
append 0
Whether or not a generated curve gets appended into an existing MAP-file.
Currently this will only work for the MAP file format.
- Off – Overwrites output file completely.
- On – Appends generated curve into an existing output file.
Framework
Export curve brushes
c_enable 1
Enables generation and export of curve brushes.
Turn off in case you only want to export detail objects.
Radius
rad 0
Curve radius in game units.
- 0: Radius is being taken from original brush or point entity location, measured from y-axis.
- Any value greater than 0 will cause the curve to be generated in that radius, including the input objects depth (y-axis).
Radius Offset
offset 0
Additional offset (+/-) on top of radius in game units.
Resolution
res 8
Number of sides/sections of the final curve.
Depends on the selected curve framework type:
Minimum Res | Maximum Res | Divisible by | |
Pi Circle | 4 | 384 | 4 |
Grid Circle | 12 | 384 | 12 |
Path_Corner | 2; based on the amount of path_corner entities | – | – |
Curve Framework Type
type 0
Type of construction frame.
- Pi Circle
Based on a simple but clean Pi Circle. Ideal for precise manmade architecture. Will create vertices with floating point coordinates, which can easily be snapped to grid when using simple brushes. - Grid Circle
Based on a special construction method (see the Online-Documentation for more info). Generated vertices will eventually be „on grid“ when using low res brushes and/or low resolutions. - Simple Path_Corner Extrusion
Suited for large outdoor terrain with low definition and high flexibility. Generated vertices will be „on grid“ and curve-brushes can be edited without becoming invalid. - Precise Path_Corner Extrusion
Ideal for complex objects. Can be triangulated for completely seamless texture mapping.
Flatten Pi Circle Framework
flatcircle 0
Circle is being transformed in a way so that its shape will be flat instead of peaked. Makes it possible to match the original mesh when doing a circle duplication.
Export Range
range_start 0
range_end 100
Start and End of export range in percent. Also has an impact on the result of ramp generation and horizontal texture stretch.
Bounding Box Type
bounds 0
Enables or disables a brush box that covers the generated objects, for an easier handling in a map editor.
- Off, no bounding box.
- Simple bounding brush to make handling of vertices with floating point positions in them easier.
- Hollowed sky box for quick test runs of the generated geometry.
Height and Ramp Settings
Height
height 0
Total height which the curve will travel in game units.
- Height will be distributed equally among all sections.
- Ramp mode can be activated to create a sloped surface.
- Textures will be aligned respectively.
- Distribution of height can be controlled with the height-curve setting.
Height Curve
heightmode 0
Defines how the total height is being distributed among the sections.
- Linear
The most basic height distribution. The curve will travel in a straight or linear line. - Path_Corner
The height (z-coordinate) of each section will be taken from another map file (see Tab „Path_Corner“), which is populated with path_corner entities.
They can exist as a connected path or be created/cloned individually in a consecutive way.
When there are more sections than path_corner entities, the height-curve will start over, making repetitive patterns possible. - Random Jagged
A random jagged line, complete chaos, not very beautiful. - Easings
The new „easing“ height-curves were taken from easings.net and can be used for smooth and accurate slopes.
Sloped Ramp
ramp 0
Adds a slope to the curve sections.
- Height must be bigger than 0 for this to have an effect.
Texturing
Texture Mapping
texmode 0
The way textures are being mapped onto curve brushes horizontally.
- Square:
- Good results with most textures.
- Best used with textures that are tiled directionally and only have little to no disruptive patterns in them.
- No distortion, but also not seamless.
- Sheared:
- Distortion can be heavy at low curve resolutions!
- Best results can be accomplished at higher curve resolutions.
- Triangulation must be active for a fully seamless result!
- As of Map2Curve v0.8 this works for all curve types and ramps.
Horizontal Shift Group Mode
shift 5
Horizontal texture shift mode.
- Nullshift
- Per Section
Longest/shortest section edge. - Per Brush
Longest/shortest brush edge. - Per Brush Texture
Respects texture-shift, -scale and -name. - Aligned Left (Section)
- Per Group Texture
The recommended default shift method. Respects texture-shift, -scale, -name and solid entity.
Horizontal Shift Source Edge
hshiftsrc 1
Defines which edge will be used as source for the calculation of the horizontal texture-shift. For a PI circle the long edge is always the outer edge, while the inner edge is the short one. Edges will be determined for each texture group individually in any case.
Horizontal Shift Offset
hshiftoffset 0
Custom offset on top of the calculated horizontal texture-shifts.
Horizontal Texture Stretch
hstretch 0
Whether or not textures will be stretched/tiled along the curve horizontally. Works together with “hstretchamt”. Respects export range.
Horizontal Texture Stretch Amount
hstretchamt 0
Controls the amount of times all textures will be repeated and stretched along the entire curve length horizontally (along the X-Axis).
- Will overwrite original texture scale and shift.
- Only works when Horizontal Texture Stretch is turned on.
- Respects export range.
- 0: Automatic, based on texture scale and curve length.
- >0: Fixed, based on curve length.