User Tools

Site Tools


arma:modeling

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
arma:modeling [2009-04-16 12:12]
snakeman added calculating normals part.
arma:modeling [2015-08-22 01:41] (current)
Line 1: Line 1:
 ====== 3D Modeling in ArmA ====== ====== 3D Modeling in ArmA ======
  
-The Armed Assault 3D modeling, not a big topic to cover eh? :)+The Armed Assault 3D modeling
  
 ====== Overview ====== ====== Overview ======
Line 15: Line 16:
 One rules is that the amount of texture used per model, you can not have 70 or 80 textures for a tank model, ArmA has come a long way and mass importing of unoptimized addons would set us all back years. One rules is that the amount of texture used per model, you can not have 70 or 80 textures for a tank model, ArmA has come a long way and mass importing of unoptimized addons would set us all back years.
  
-**Ebud** said in BIS forum: The weapons are nice, but don't have proper ​lods for ARMA. They'​re not actually modeled down and just go from a high poly model to a billboard rather than model down each lod by 50%, and billboards for far lods shouldn'​t be used anymore.+**Ebud** said in BIS forum: The weapons are nice, but don't have proper ​LODs for ARMA. They'​re not actually modeled down and just go from a high poly model to a billboard rather than model down each lod by 50%, and billboards for far LODs shouldn'​t be used anymore.
  
-**Skaven** said in BIS forum: All LODS modeled down, so it means the plain texture is over, I will wright a tutorial later explaining how I did it, basically I used p2m tool, [[http://​www.sharecg.com/​v/​5169/​software-and-tools/​LithUnwrap---Free-UV-Mapper-for-Windows|LithUnwrap]],​ 3D Studio Max and [[http://​www.mootools.com/​plugins/​us/​polygoncruncher/​index.asp|polygon cruncher]] in terms of polys/faces it's more or less as BIS's values in most I even used less, basically, I made a 50% decrease of poly/faces per LOD. All weapons now use one texture only, I used the [[arma:​texturing:​merging_textures|merge textures]] feature in O2, it's actually very simple I may also wright a tutorial about it, although Jackal already wrote once some time ago.+**Skaven** said in BIS forum: All LODs modeled down, so it means the plain texture is over, I will wright a tutorial later explaining how I did it, basically I used p2m tool, [[http://​www.sharecg.com/​v/​5169/​software-and-tools/​LithUnwrap---Free-UV-Mapper-for-Windows|LithUnwrap]],​ 3D Studio Max and [[http://​www.mootools.com/​plugins/​us/​polygoncruncher/​index.asp|polygon cruncher]] in terms of polys/faces it's more or less as BIS's values in most I even used less, basically, I made a 50% decrease of poly/faces per LOD. All weapons now use one texture only, I used the [[arma:​texturing:​merging_textures|merge textures]] feature in O2, it's actually very simple I may also wright a tutorial about it, although Jackal already wrote once some time ago.
  
 About texture merge: I've been checking your textures carefully and I think probably just one 2048x2048 file will do for all the tank however, if you decide to do merge them you should do it in steps and not all at the same time since you have two problems, 1 there are away too many texture files and 2 they have many different sizes. If you decide to merge them I think you should merge them by groups (sizes) first and than in the end join all of them. About texture merge: I've been checking your textures carefully and I think probably just one 2048x2048 file will do for all the tank however, if you decide to do merge them you should do it in steps and not all at the same time since you have two problems, 1 there are away too many texture files and 2 they have many different sizes. If you decide to merge them I think you should merge them by groups (sizes) first and than in the end join all of them.
Line 25: Line 26:
 Once you normal map 1 or 2 models the rest is all the same you may increase or decrease the filter effect darken or lighter some spots but in reality it's really really easy, merging textures is also a piece of cake some code and a larger photoshop texture file is all you need in here. Once you normal map 1 or 2 models the rest is all the same you may increase or decrease the filter effect darken or lighter some spots but in reality it's really really easy, merging textures is also a piece of cake some code and a larger photoshop texture file is all you need in here.
  
-**Solus** with XMS/​Beretta ​[[http://​www.flashpoint1985.com/​cgi-bin/​ikonboard311/​ikonboard.cgi?​act=ST;​f=70;​t=62253|example weapons release]]: The XMS has a simulation of a red dot sight and both have animated triggers, magazines, and bolt/slide. Both weapons have normal maps, specular maps, and detail maps and have shadow volume LODs.+**Solus** with XMS/Beretta example weapons release: The XMS has a simulation of a red dot sight and both have animated triggers, magazines, and bolt/slide. Both weapons have normal maps, specular maps, and detail maps and have shadow volume LODs.
  
 **Armored_Sheep** (BIS dev) about pilot proxy: Triangle that is placed in the model and represents the position of animated character is always relative to specific animation. Animations (RTM file, animation state) are defined in config. RTM files can be made in Oxygen using simple "​puppet"​ rigid model of character (no skinning). For ArmA we tried to use basic rule that the bottom point is where the character has main contact with floor or chair. With releasing Oxygene2 we plan to publish also example character and skeleton models. **Armored_Sheep** (BIS dev) about pilot proxy: Triangle that is placed in the model and represents the position of animated character is always relative to specific animation. Animations (RTM file, animation state) are defined in config. RTM files can be made in Oxygen using simple "​puppet"​ rigid model of character (no skinning). For ArmA we tried to use basic rule that the bottom point is where the character has main contact with floor or chair. With releasing Oxygene2 we plan to publish also example character and skeleton models.
Line 39: Line 40:
  
 The "Find Components"​ option in O2 typically makes it so other objects are able to impact the geometry LOD, and vice versa. The problem is this means when a 100kg object doing 900km/h hits another static object, ArmA has a habit of making the static object fly off, especially ships. It also avoids problems like dropping bombs from a plane and having them "​bump"​ into the plane itself. The "Find Components"​ option in O2 typically makes it so other objects are able to impact the geometry LOD, and vice versa. The problem is this means when a 100kg object doing 900km/h hits another static object, ArmA has a habit of making the static object fly off, especially ships. It also avoids problems like dropping bombs from a plane and having them "​bump"​ into the plane itself.
 +
 +**Armored_Sheep** (BIS Dev): ArmA engine does autocentering. The center of object in game is than affected by all vertices and all lods the p3d has. For proxies, such as weapons we use property Autocenter to prevent this. But be aware that if you place your model (for example building or car) far away off the 0.0.0 point in O2 and disable autocentering,​ you can brake for example AI path finding.
 +
 +Binarisation does the autocentering automatically for all objects except the ones with autocenter=0 property in geometry. Don't use autocenter=0,​ except for proxies or when you really have no other choice.
 +
 +**Armored_Sheep (BIS Dev)**: Strange convex can be that it has no volume, probably it is double sided plane.
 +
 +
 +====== Geometry ======
 +
 +You can read still valid information about geometry from [[ofp:​modeling:​geometry_lod|OFP:​ Modeling: Geometry LOD]] page.
 +
  
 ====== Misc Stuff ====== ====== Misc Stuff ======
  
-In roads, bridges or for example Vietnam rice paddy trails, you need to add **geometry** LOD property name entry of **class = road** and **map = road** if you wish them to appear ​ingame ​map. Otherwise your terrain might look bit pale.+In roads, bridges or for example Vietnam rice paddy trails, you need to add **geometry** LOD property name entry of **class = road** and **map = road** if you wish them to appear ​in-game ​map. Otherwise your terrain might look bit pale.
  
 If you wish to use 50m x 50m forest/​bush/​canopy objects in ArmA, if you want to display them properly here is the scheme of map:\\ If you wish to use 50m x 50m forest/​bush/​canopy objects in ArmA, if you want to display them properly here is the scheme of map:\\
Line 53: Line 66:
  
 If your [[arma:​arma.rpt|arma.rpt]] gives a lot of "<​addon>​\<​model>​.p3d:​ house, config class missing"​ errors, you can fix this by adding the class = building to your object, instead of house. If your [[arma:​arma.rpt|arma.rpt]] gives a lot of "<​addon>​\<​model>​.p3d:​ house, config class missing"​ errors, you can fix this by adding the class = building to your object, instead of house.
 +
  
 ====== BIS MLOD Models ====== ====== BIS MLOD Models ======
  
 BIS Example MLOD models was released with the official tools, read our analysis of them [[arma:​modeling:​bismodels|here]] BIS Example MLOD models was released with the official tools, read our analysis of them [[arma:​modeling:​bismodels|here]]
 +
  
 ====== Model Config ====== ====== Model Config ======
 +
 +Never ever put cfgSkeleton and cfgModels into config.cpp, always use model.cfg file for them!
  
 Check out more details [[arma:​modeling:​model_config|here]]. Check out more details [[arma:​modeling:​model_config|here]].
 +
  
 ====== Model Conversions ====== ====== Model Conversions ======
  
 Converting 3DS Max or OFP model to ArmA, you need to read [[arma:​modeling:​model_conversions|here]] Converting 3DS Max or OFP model to ArmA, you need to read [[arma:​modeling:​model_conversions|here]]
 +
  
 ====== Shadows ====== ====== Shadows ======
Line 76: Line 95:
  
 [[arma:​modeling:​damage_tut|Adding Damage to your addon]] - Tutorial, Damage Textures and Animation by Gnat. [[arma:​modeling:​damage_tut|Adding Damage to your addon]] - Tutorial, Damage Textures and Animation by Gnat.
 +
 +Vehicle wheels damage help located [[arma:​modeling:​damage_wheels|here]].
 +
  
 ====== Trigger Animation ====== ====== Trigger Animation ======
  
 Personal weapon trigger animation information can be found [[arma:​modeling:​trigger_animation|here]] Personal weapon trigger animation information can be found [[arma:​modeling:​trigger_animation|here]]
 +
 +
 +====== Machine gun belt animation ======
 +
 +Tutorial for [[arma:​modeling:​machine_gun_belt_animation|Machine gun belt animation]] by Skaven.
 +
 +
 +====== Static object animation ======
 +
 +Tutorial for [[arma:​modeling:​static_object_animation|Static object animation]]
 +
  
 ====== Selections ====== ====== Selections ======
  
 Selections information can be found [[arma:​modeling:​selections|here]] Selections information can be found [[arma:​modeling:​selections|here]]
 +
  
 ====== Token Names ====== ====== Token Names ======
  
 Token name value types can be found [[arma:​modeling:​tokennames|here]] Token name value types can be found [[arma:​modeling:​tokennames|here]]
 +
  
 ====== Turrets ====== ====== Turrets ======
  
 Basic understanding how to create multiple gunners (turrets) in helicopters is [[arma:​modeling:​turrets|here]] Basic understanding how to create multiple gunners (turrets) in helicopters is [[arma:​modeling:​turrets|here]]
 +
  
 ====== Muzzle Flash ====== ====== Muzzle Flash ======
  
 Muzzle flash information can be found [[arma:​modeling:​muzzle_flash|here]] Muzzle flash information can be found [[arma:​modeling:​muzzle_flash|here]]
 +
  
 ====== Lights ====== ====== Lights ======
  
 Vehicle lights information can be found [[arma:​modeling:​lights|here]] Vehicle lights information can be found [[arma:​modeling:​lights|here]]
 +
  
 ====== Proxy ====== ====== Proxy ======
  
 Proxys on the BIS vehicles is listed [[arma:​modeling:​proxy|here]] Proxys on the BIS vehicles is listed [[arma:​modeling:​proxy|here]]
 +
  
 ====== Making Big Ships ====== ====== Making Big Ships ======
  
 We still have the 50m geometry limit. Read more [[arma:​modeling:​bigship|here]] We still have the 50m geometry limit. Read more [[arma:​modeling:​bigship|here]]
 +
  
 ====== Grass Tutorial ====== ====== Grass Tutorial ======
  
 [[arma:​modeling:​grass_tutorial|Grass Tutorial]] by Linker Split. [[arma:​modeling:​grass_tutorial|Grass Tutorial]] by Linker Split.
 +
  
 ====== Section Fixing ====== ====== Section Fixing ======
  
 [[arma:​modeling:​section_fixing|How to fix / merge sections]] tutorial by feersum.endjinn [[arma:​modeling:​section_fixing|How to fix / merge sections]] tutorial by feersum.endjinn
 +
  
 ====== How To Import 3DS Model ====== ====== How To Import 3DS Model ======
  
 [[arma:​modeling:​import_3ds|How To Import 3DS Model]] tutorial by Panda[PL] [[arma:​modeling:​import_3ds|How To Import 3DS Model]] tutorial by Panda[PL]
 +
 +
 +====== Glass Tutorial ======
 +
 +How to make transparent alpha channel glass texture and modeling to your addon. Read [[arma:​modeling:​glass_tutorial|Glass tutorial]].
 +
  
 ====== Glass Damage Tutorial ====== ====== Glass Damage Tutorial ======
  
 [[arma:​modeling:​glass_damage|Glass Damage]] tutorial by Obmar [[arma:​modeling:​glass_damage|Glass Damage]] tutorial by Obmar
 +
  
 ====== Destroyed Building ====== ====== Destroyed Building ======
  
 How to create animation for destroyed building when it collapses. Read [[arma:​modeling:​destroyed_building|destroyed building]] page. How to create animation for destroyed building when it collapses. Read [[arma:​modeling:​destroyed_building|destroyed building]] page.
 +
  
 ====== Forest 50m Block ====== ====== Forest 50m Block ======
  
-How to model 50m x 50m forest/​jungle blocks or grass so it wont float in the air? [[arma:​modeling:​placement|geometry placement values]] is the solution.+How to model 50m x 50m forest/​jungle blocks or grass so it wont float in the air? [[arma:​modeling:​placement|geometry placement values]] is the solution. ​**HOWEVER THIS DOES NOT WORK, WELL IT WORKS BUT CAUSES HUGE FPS LOSS.** 
  
 ====== Creating Low Res LOD in Modo 302 ====== ====== Creating Low Res LOD in Modo 302 ======
Line 160: Line 211:
  
 And in case of two exactly opposing normals, you get a (0/0/0) normal for smooth edges. And in case of two exactly opposing normals, you get a (0/0/0) normal for smooth edges.
 +
 +
 +====== Tracked Vehicle sinks to ground ======
 +
 +If your tracked vehicle (tank) sinks to the ground so that the tracks are well below ground level, then you need to edit the damper points in Memory LOD.
 +
 +Specifically you need to add the damper vertices 0.15 underneath the tracks, then your tank aligns properly to the ground surface.
 +
 +
 +====== ST Errors ======
 +
 +ST error on [[arma:​arma.rpt|arma.rpt]] file.
 +
 +**Suma (BIS Dev)**: it is caused by p3d which was not binarized. ST coordinates are needed for normal maps. Normally it is Binarize which computes them. With non-binarized model they must be created by the game, which is slow.
 +
 +
 +====== Tutorial: Weapon Optimizing ======
 +
 +You can read [[arma:​modeling:​weapon_optimizing|tutorial of weapon optimizing]],​ which is also sort of development story at the same time. See step by step how to reduce point/poly count and sections in your weapon. This tutorial uses Synide'​s Move UV's method and Modo 302.
 +
 +
 +====== Low Resolution LOD ======
 +
 +Description what is and why is low resolution LODs so important in a model. Read [[arma:​modeling:​low_res_lod|Modeling Low RES LOD]].
 +
 +
 +====== How to create low res LOD ======
 +
 +How to create low resolution LODs, read about it [[arma:​modeling:​howto_make_lowres_lods|Howto Make Low RES LODs]].
 +
 +
 +====== UV unwrap tutorial ======
 +
 +Quick UV unwrap tutorial [[arma:​modeling:​uv_unwrap_tutorial|UV unwrap Tutorial]] and [[arma:​modeling:​uv_unwrap_tutorial2|UV unwrap tutorial 2]].
 +
 +
 +====== O2 Propertys ======
 +
 +List of few [[arma:​modeling:​oxygen-2-propertys|Oxygen 2 Propertys]] for models like fences, fortresses and tents.
arma/modeling.1239883944.txt.gz · Last modified: 2009-04-16 12:12 by snakeman