Synide – User talk

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Lou Montana moved page User talk:Sy to User talk:Synide: Name standard)
 
(9 intermediate revisions by 3 users not shown)
Line 1: Line 1:
The following is temporary...
<blockquote>Specular map is a complex bitmap. Each color chanel has its own purpose. You should understand well the way of calculating pixel colors in scene before you paint those textures.
 
As written in http://community.bistudio.com/wiki/ArmA:_RVMAT
value of each pixel is calculated with RVMAT values and engine lighting values.
 
Texture _SM has diffuse values in RED, specular in GREEN and, Specular power in BLUE chanel. _SMDI does not use RED chanel (better compression) GPU calculates those values automaticaly as Diffuse = 1 - Specular.
 
When you use specular map - diffuse, specular in RVMAT should be 1. Then paint B/W map with maximum specular and minimum specular values you imagine on surface. Than choose minimum (black) and maximum specular (white) values and change the bitmap levels to those values.</blockquote> [http://www.flashpoint1985.com/cgi-bin/ikonboard311/ikonboard.cgi?s{{=}}134290c3fb57034d4ebf2ab6bf49ea89;act=ST;f=76;t=68158; Specular Map info. from Armoured Sheep]
 
[http://www.flashpoint1985.com/cgi-bin/ikonboard311/ikonboard.cgi?s{{=}}df217ce91fb8aa1c98a227c3387ceab3;act=ST;f=76;t=68241; Shadow Volume info from Armoured Sheep]
 
(Note to self)
At some stage it might be a good idea (of course it may just as well not be...) to have a listing of common rvmat material settings with a reference picture.
Maybe specifying shaders, values etc. for common materials such as metals, masonary etc.
Might be something OFPEC might be more suited too as it may get 'out of hand' with a 'thousand' blood textures/materials or something just as stupid... anyhow, this is a reminder note to look at it in the future...
 
(Another Note to self)
Start a discussion at some stage on the forums regarding bringing new character models in.
Specificaly, different sized models from the current BIS content.
This discussion would result in some general consensus regarding one (or more) 'sizes'.
That is, all current rtm's and units are based around a model size of 1.8 metres. (apart from some which are unit specific ones...)If there was some community consensus, then perhaps (as an example) one could have some 5'6" (165cm) characters, or 4-5 ft. characters.
Also, a characters volume would need to agreed upon. These, sorts of issues would only be necessary if there was a desire to have rtm's that could work with models from disparate sources. Also, a naming convention, similar maybe to bis's but also including a size reference.
----
----
This is my init.sqf file I use in all my missions.
[quote=Armored_Sheep,April 23 2008,03:56]For working animated material that is bind to vehicle damage you need:
It correctly identifies in what context the init.sqf file is being run.


<code><nowiki>/*
1) selection on your model that contains faces with animated material (switch one rvmat to another)
        Synide
2) damage materials
        11/6/2007
3) section defined in model.cfg for the animated selection
        v1.0
4) hitzone definition in config.cpp in class HitPoint* where the selection is written
       
5) class dammage in config.cpp where switching materials are defined
Things to note...
6) Model and all its sources must be binarised (packed) in PBO[/quote]


If you are there at mission launch from that point on your 'Context'
[http://www.flashpoint1985.com/cgi-bin/ikonboard311/ikonboard.cgi?s{{=}}80c14cab8ca372df9a0a12fad8eda748;act=ST;f=80;t=72938; Damage Textures]
will always be 'MP_CLIENT' and will stay as such even when you respawn.
----
If you are an 'MP_CLIENT' then you 'disconnect' from a continuing mission
and select a new playable character or the same playable character you will
become a 'JIP_CLIENT'.  
If you join an inprogress mission you will be a 'JIP_CLIENT' from that
point till the mission ends.  
*/
//init.sqf
debug=false;


if (isServer) then
== Undocumented O2Script 'callRuntime' command parameters ==
{
  if (isnull player) then {Context = "mp_server";}else{Context = "sp_server";};
}else{
  if (isnull player) then {Context = "jip_client";}else{Context = "mp_client";};
};


call compile preprocessFileLineNumbers "scripts\common\init.sqf";
Following is a list of (so far anyway) undocumented O2 commands that can be called via the O2Script command 'callRuntime'.
call compile preprocessFileLineNumbers format["scripts\%1\init.sqf",Context];


processInitCommands;
eg.
finishMissionInit;
</nowiki></code>


Things to note about the above for MP only.
_LoD callRuntime "isolatedpts";


*If you are there at mission launch from that point on your 'Context' will always be 'MP_CLIENT' and will stay as such even when you respawn.
:: From O2Script make a call to the runtime to 'select isolated points'.
*If you are an 'MP_CLIENT' then you 'disconnect' from the continuing mission and select a new playable character you will become a 'JIP_CLIENT'.
*If you join an inprogress mission you will be a 'JIP_CLIENT' from that point till the mission ends.


facegraph


hidesel


----
unhidesel
 
locksel
 
unlocksel
 
recalcnorms
 
sortanims
 
squarizesel
 
triangulatesel
 
selhidden
 
checkclosed
 
closetopo
 
removecompo
 
createcompo
 
compoconvexhull
 
checkconvexcompo
 
checkconvexity
 
autosharp
 
makesharp
 
mirroranim
 
halfrateanim
 
texlist
 
matlist


<blockquote>Specular map is a complex bitmap. Each color chanel has its own purpose. You should understand well the way of calculating pixel colors in scene before you paint those textures.
proxylist


As written in http://community.bistudio.com/wiki/ArmA:_RVMAT
cropsel
value of each pixel is calculated with RVMAT values and engine lighting values.


Texture _SM has diffuse values in RED, specular in GREEN and, Specular power in BLUE chanel. _SMDI does not use RED chanel (better compression) GPU calculates those values automaticaly as Diffuse = 1 - Specular.
optimize


When you use specular map - diffuse, specular in RVMAT should be 1. Then paint B/W map with maximum specular and minimum specular values you imagine on surface. Than choose minimum (black) and maximum specular (white) values and change the bitmap levels to those values.</blockquote> [http://www.flashpoint1985.com/cgi-bin/ikonboard311/ikonboard.cgi?s=134290c3fb57034d4ebf2ab6bf49ea89;act=ST;f=76;t=68158; Specular Map info. from Armoured Sheep]
isolatedpts


[http://www.flashpoint1985.com/cgi-bin/ikonboard311/ikonboard.cgi?s=df217ce91fb8aa1c98a227c3387ceab3;act=ST;f=76;t=68241; Shadow Volume info from Armoured Sheep]
chkmapping


== Changes to model animation article ==
chkstvects


Hi and thanks for contributing to the How to animate a model article.
chkfaces
You removed an essential part from the article stating how to create animations in the confic.cpp file.
However, you didn't include any info on how to do it "properly", you just stated "outdated since tools released".
Please add information on how to do this or roll back the article.
Thanks TeRp


:TeRp, Did you read the part i removed? quote "However, this does not seems to work (I assume the model.cfg files will be put into the model p3d file during binarization). For now, you can add the cfgSkeletons and cfgModels class to your config.cpp which works like a charm."
repairfaces
:The above, is inaccurate since the release of the Binarize tool. It is not an essential part of the article. If it was i would not have removed it. It does not need to be 'replaced' with any additional text because the sentence before it is entirely sufficent.
:It reads... "According to the article about Model Config, the cfgSkeletons and cfgModels class should be part of a model.cfg file which is located in the addon pbo file."
:i find it hard to believe that you do not know that the sentence in your article indicating that the model.cfg method of detailing the skeleton & such is working since the release of the Binarize tool.


degfaces


:Cheers, Sy. -- [[User:Sy|Sy]] 03:39, 18 November 2007 (CET)
smoothgroups


As far as I know (which is fairly little), the model.cfg file is read by Binarize at binarization time and the information is incorporated in the model and/or config for it.
countsections
There is no model.cfg file present in the pbo when it is packed, unless it is put there manually if you are packing manually, after binarization the model.cfg file has no further purpose.


[[User:Planck|Planck]] 14:57, 18 November 2007 (CET)
getsections


:Planck, known. There is a little cavet on the use of the Binarize tool, but it is not to do with the processing of a model.cfg and consequentially TeRp's article.
----
:
:Cheers, Sy
:
:PS. The little cavet is to do with Binarize not currently being able to process rvmat files into the odolv40 model... -- [[User:Sy|Sy]] 15:15, 18 November 2007 (CET)

Latest revision as of 15:57, 12 March 2024

Specular map is a complex bitmap. Each color chanel has its own purpose. You should understand well the way of calculating pixel colors in scene before you paint those textures.

As written in http://community.bistudio.com/wiki/ArmA:_RVMAT value of each pixel is calculated with RVMAT values and engine lighting values.

Texture _SM has diffuse values in RED, specular in GREEN and, Specular power in BLUE chanel. _SMDI does not use RED chanel (better compression) GPU calculates those values automaticaly as Diffuse = 1 - Specular.

When you use specular map - diffuse, specular in RVMAT should be 1. Then paint B/W map with maximum specular and minimum specular values you imagine on surface. Than choose minimum (black) and maximum specular (white) values and change the bitmap levels to those values.

Specular Map info. from Armoured Sheep

Shadow Volume info from Armoured Sheep

(Note to self) At some stage it might be a good idea (of course it may just as well not be...) to have a listing of common rvmat material settings with a reference picture. Maybe specifying shaders, values etc. for common materials such as metals, masonary etc. Might be something OFPEC might be more suited too as it may get 'out of hand' with a 'thousand' blood textures/materials or something just as stupid... anyhow, this is a reminder note to look at it in the future...

(Another Note to self) Start a discussion at some stage on the forums regarding bringing new character models in. Specificaly, different sized models from the current BIS content. This discussion would result in some general consensus regarding one (or more) 'sizes'. That is, all current rtm's and units are based around a model size of 1.8 metres. (apart from some which are unit specific ones...)If there was some community consensus, then perhaps (as an example) one could have some 5'6" (165cm) characters, or 4-5 ft. characters. Also, a characters volume would need to agreed upon. These, sorts of issues would only be necessary if there was a desire to have rtm's that could work with models from disparate sources. Also, a naming convention, similar maybe to bis's but also including a size reference.


[quote=Armored_Sheep,April 23 2008,03:56]For working animated material that is bind to vehicle damage you need:

1) selection on your model that contains faces with animated material (switch one rvmat to another) 2) damage materials 3) section defined in model.cfg for the animated selection 4) hitzone definition in config.cpp in class HitPoint* where the selection is written 5) class dammage in config.cpp where switching materials are defined 6) Model and all its sources must be binarised (packed) in PBO[/quote]

Damage Textures


Undocumented O2Script 'callRuntime' command parameters

Following is a list of (so far anyway) undocumented O2 commands that can be called via the O2Script command 'callRuntime'.

eg.

_LoD callRuntime "isolatedpts";

From O2Script make a call to the runtime to 'select isolated points'.

facegraph

hidesel

unhidesel

locksel

unlocksel

recalcnorms

sortanims

squarizesel

triangulatesel

selhidden

checkclosed

closetopo

removecompo

createcompo

compoconvexhull

checkconvexcompo

checkconvexity

autosharp

makesharp

mirroranim

halfrateanim

texlist

matlist

proxylist

cropsel

optimize

isolatedpts

chkmapping

chkstvects

chkfaces

repairfaces

degfaces

smoothgroups

countsections

getsections