Jump to content

New IG mode woes


photo

Recommended Posts

Hello,

The new IG "mode" looks promising, but it brings along a few questions.

  • At this point, I think we definitely need a comprehensive and as complete as possible list of the effect of each CIGI message on the IG, and whether it is supported or not (if such a list exists, sorry I couldn't find it)
  • For example, I couldn't find a way to control the cloud coverage (Cigi coverage only seems to control the ambiant luminosity)
  • The cloud layer is created dynamicaly by the IG. Can we create one "in the world" to tune some parameters, or what would be the way of doing it?
  • Environmental Region Control packet crashes Unigine.
  • If rain/snow is supported, how do you set it up? what would be the limitation?
  • stratocumulus and stratus seems to be somewhat supported. what about the others? Can we define local "storm clouds" through cigi message? 
  • as the CIGI plugin is deprecated, how do you work with custom messages, or user calbacks, with the new IG mode?
  • I suppose we can build our own connectors, but how ? (can't find the doc on that). Typically I'd like to add a DIS connector.
  • Previously, entities node had to be rotated so their X axis would be front and Z down (as the CIGI entity reference frame). This is no longer the case and I think the new way is better ! Good ! But it's not listed in the documentation. Some people may have to reorient their nodes.
  • LOS responses seem incorrect (wrong ID, valid not updated, range not filled) Can you confirm?
  • HAT/HOT seem broken too, responding always 0 (tested with Hemu and our own host too).

Thanks for your help

Link to comment

Hi!

On 1/7/2019 at 7:30 PM, Amerio.Stephane said:

For example, I couldn't find a way to control the cloud coverage (Cigi coverage only seems to control the ambiant luminosity) 

Cloud coverage is set by Coverage from Weather Control Packet. It's strange if Coverage parameter changes only ambient. You can check visibility distance and clouds altitude, maybe they are outside visibility area.

Coverage changing has some transition period for smooth state changing. You can find time parameters for transition time in file: data/ig_config.xml, tag: cloud_transition_time.

If you use CIGI Hemu 3 you can load attached environment config (Environment.def), and then go to Environment tab and click to some cloud layer,  parameter "Coverage" must appear.

Also, rain and snow parameters for weather layer in attached file.

 

Environment.def

Link to comment
On 1/7/2019 at 7:30 PM, Amerio.Stephane said:

stratocumulus and stratus seems to be somewhat supported. what about the others? Can we define local "storm clouds" through cigi message? 

You can setup own materials for other cloud types in property CloudsParams, (file data\ig\weather\properties\CloudsParams.prop).

Now, you can't create local clouds.

 

On 1/7/2019 at 7:30 PM, Amerio.Stephane said:

The cloud layer is created dynamicaly by the IG. Can we create one "in the world" to tune some parameters, or what would be the way of doing it?

There isn't way to create "IG cloud layer" entity without IG application. You can tune only cloud material parameters without IG.

Link to comment

Hello! 

7. The CIGIConnector has method setReceivePacketCallback, (signature of the callback void func (ICigiHostPacket * packet))
with it, you can additionally process for CigiHostPacket.

What do you mean "Custom message" - packages with your custom OPCODE? At the moment there is no such possibility, but if necessary - we can think about it.

 

8. How to add your connector: the connector is a c ++ plugin where messages are exchanged between the host and the IG. Inside plugin, you read the packages and call the match IG methods (from IGInterface.h).
In the near future we will add an example of creating our own connector.

We are also working on creating our own DIS-Connector.

 

10. In a LOS request, same errors are possible, because HEMU does not correctly read the packet from the IG, and we could not fully test. Please, check the package signature with CIGI_ICD_3.3 in your host. 

Also in the LOS request, we did not implement alpha-threshold support due to engine limitations. At the moment we think about how to get around this limitation.

 

11. Hat-hot requires OBJECT_TERRAIN_GLOBAL in the scene. Otherwise, it returns 0. 

Thanks for the feedback.

Link to comment
3 hours ago, moroz said:

Cloud coverage is set by Coverage from Weather Control Packet. It's strange if Coverage parameter changes only ambient. You can check visibility distance and clouds altitude, maybe they are outside visibility area.

I guess I fumbled with Hemu, because now it works correctly, so.. my bad :)

Is the layer severity supported?

I think the wind direction is incorrect, though. As per CIGI ICD, the datum is 0=true north, +90=east for the direction from which the wind is blowing. Currently, a value of 0 shows a wind blowing from the east, and +90 from the south.

For HAT/HOT you are right I just testsed with a basic plane. I'll redo my tests with a full terrain and our host.

Note: your rain effect is amazingly good looking! Congrats!

Link to comment
6 minutes ago, Amerio.Stephane said:

Is the layer severity supported?

Now weather layer severity isn't supported. Please, can you specify severity influence to other components of weather? CIGI documentation doesn't have enough information about this, only there is information about severity influence for Random Lightning.

Link to comment
33 minutes ago, Amerio.Stephane said:

I think the wind direction is incorrect, though. As per CIGI ICD, the datum is 0=true north, +90=east for the direction from which the wind is blowing. Currently, a value of 0 shows a wind blowing from the east, and +90 from the south.

You are right, we will fix it.

Link to comment
1 hour ago, moroz said:

Now weather layer severity isn't supported. Please, can you specify severity influence to other components of weather? CIGI documentation doesn't have enough information about this, only there is information about severity influence for Random Lightning.

The CIGI ICD is indeed a bit light in this regard. On our side, we use the severity for the intensity of the rain effect (1=slight rain, 5=heavy rain). If you think this should be controlled in another way, please share.

Link to comment
4 minutes ago, Amerio.Stephane said:

If you think this should be controlled in another way, please share.

For precipitation intensity control we use Aerosol Concentration, but this dependency isn't physically accurate. What do you think about this way for intensity control? For what do you use Aerosol Concentration?

Link to comment

I'm okay with using intensity control, no need to change anything then. We weren't using it (nor barometric pressure, temperature, humidity, as they are more for sensor based IG)

I notice the impact on performance is quite dramatic (10g/m3 and fps drops below 30fps, guess I'll stick to value between 1-5). Minor remark: the ground splashes dont seem to vary with the aerosol concentration.

Can you confirm Env region control packet crashes Unigine ?

Is it possible to change ocean waves and Beaufort aspect with the new IG?

Link to comment
16 hours ago, Amerio.Stephane said:

Minor remark: the ground splashes dont seem to vary with the aerosol concentration. 

It should work as expected, please, check difference between 0.1, 0.5 and 1 values (see attached example image):
ig_rain_test.png

16 hours ago, Amerio.Stephane said:

Can you confirm Env region control packet crashes Unigine ?

Yes, I confirm it. Now environment regional control for CIGI isn't implemented.

16 hours ago, Amerio.Stephane said:

Is it possible to change ocean waves and Beaufort aspect with the new IG?

Now there is no such possibility yet.

 

Link to comment
3 hours ago, moroz said:

check difference between 0.1, 0.5 and 1 values

You are right, a difference is visible in the opacity of the effect. Thanks !

New question: is it possible to control in the new IG the wind intensity for trees and grass animation?

Link to comment
14 minutes ago, Amerio.Stephane said:

New question: is it possible to control in the new IG the wind intensity for trees and grass animation?

Yes. Weather layer wind changes global Animation Scale and Animation Wind for Vegetation in dependency of player position inside weather layers.

Link to comment

Current state of supported CIGI messages you can see in the table below. Please, feel free to comment which one are the most wanted :)

  supported not supported planned in the next SDK update  
ig_control Byte Swap, Extrapolation/Interpolation Enable, Database Number Timestamp, IG Mode    
entity_control yes Alpha    
entity_clamped_control FULL      
component_control component classes: ENTITY, VIEW, GROUP SENSOR, REG_WATER, REG_TERRAIN, REG_WEATHER, GLOBAL_WATER, GLOBAL_TERRAIN, GLOBAL_WEATHER, ATMOSPHERE, CELESTIAL, EVENT, SYSTEM,
SYMBOL_SURFACE, SYMBOL,
   
component_short_control component classes: ENTITY, VIEW, GROUP SENSOR, REG_WATER, REG_TERRAIN, REG_WEATHER, GLOBAL_WATER, GLOBAL_TERRAIN, GLOBAL_WEATHER, ATMOSPHERE, CELESTIAL, EVENT, SYSTEM,
SYMBOL_SURFACE, SYMBOL,
   
articulated_control FULL      
articulated_short_control FULL      
rate_control FULL      
celestial_control FULL      
atmosphere_control Visibility Range, Wind speed and direction Global Humidity, Global Air Temperature, Global Barometric Pressure    
environment_control CRASH (2.7.3)
udp: fixed in 2.7.3.1
Merge Weather Properties, Merge Aerosol Concentrations, Merge Maritime Surface Conditions, Merge Terrestrial Surface Conditions Region State, Latitude, Longitude, Size, Corner Radius, Rotation, Transition Perimeter additional testing required
weather_control Layer ID (1-5), Weather Enable, Random Lightning Enable, Cloud Type (not regional clouds), Scope(0-1), Visibility Range, Coverage(for cloud), Base Elevation, Thickness, Horizontal Wind Speed, Vertical Wind Speed, Wind Direction, Aerosol Concentration (for precipitation) Entity ID, Severity, Air Temperature, Scud Frequency, Barometric Pressure Transition Band additional testing required
maritime_control NOT SUPPORTED    
wave_control NOT SUPPORTED    
terrestrial_control NOT SUPPORTED    
view_control FULL      
sensor_control NOT SUPPORTED    
tracker_control NOT SUPPORTED    
earth_model_def NOT SUPPORTED    
trajectory_def NOT SUPPORTED    
view_def FULL      
segment_def yes Material Code   additional testing required
volume_def FULL     additional testing required
hat_hot_request FULL with Extended, with update period      
los_segment_request yes with Extended, with update period alpha threshold, color, material mask   additional testing required
los_vector_request yes with Extended, with update period material mask, Alpha Threshold,   additional testing required
position_request FULL with update period      
environment_request NOT SUPPORTED    
symbol_surface_def NOT SUPPORTED FULL  
symbol_text_def NOT SUPPORTED FULL  
symbol_circle_def NOT SUPPORTED FULL  
symbol_line_def NOT SUPPORTED FULL  
symbol_clone NOT SUPPORTED    
symbol_control NOT SUPPORTED FULL  
symbol_short_control NOT SUPPORTED FULL  
         

How to submit a good bug report
---
FTP server for test scenes and user uploads:

Link to comment
1 hour ago, moroz said:

Weather layer wind changes global Animation Scale and Animation Wind for Vegetation in dependency of player position inside weather layers.

Indeed it works. But I think this behaviour will interfere with Field Animation because they are global settings. I mean, we use 4 FieldAnim in a circle pattern for the local wind generated by the rotor. Do you think it would work together? Or what would be the recommended way?

@silent Thanks for the list ! I think we will need a way to control sea state and maybe a suggestion on how to manage runway condition (icy, wet, etc.)

Continuing with my tests, I have a few new remarks:

  • ground fog is only displayed while we are within the layer. It just disappear when we are above
  • cloud layer thickness is underestimated: for example, a 1000m thickness produce something that look like maybe 600m thickness. I guess this is due to the voxelisation used. 
  • there is a starmap as environment, but the color multiplier is so low it isn't visible at night. What am I missing?

Thanks!

Link to comment
47 minutes ago, Amerio.Stephane said:

Indeed it works. But I think this behaviour will interfere with Field Animation because they are global settings. I mean, we use 4 FieldAnim in a circle pattern for the local wind generated by the rotor. Do you think it would work together? Or what would be the recommended way? 

FieldAnimation and Animation must work together with parameters interference.

47 minutes ago, Amerio.Stephane said:

ground fog is only displayed while we are within the layer. It just disappear when we are above

This is because "ground fog" effect is created by Haze in Environment, that depends on Visibility Distance of Weather Layer. This isn't "true" ground fog. We are going to implement ground fog effect by volumetric in future.

47 minutes ago, Amerio.Stephane said:

there is a starmap as environment, but the color multiplier is so low it isn't visible at night. What am I missing?

Please, check that starmap intensity is set to 100%. Also, according to our experience starmap perception may be different on different displays.

Link to comment
3 hours ago, moroz said:

FieldAnimation and Animation must work together with parameters interference.

You mean "without" I guess, or do you mean I can't have both global wind and rotor wind?

@cash-metall We don't use a lot of PDU. We use VR-Forces as our main DIS source, and we emit Entity State essentialy, and may need Create/Remove Entity, Start/Stop, Appearance, Articulated Parts (non essential).

Link to comment
13 hours ago, Amerio.Stephane said:

You mean "without" I guess, or do you mean I can't have both global wind and rotor wind?

I mean that you can use global and field wind together.

Link to comment

I'm testing functionality for a multiple IG setup using the Cigi Host Emulator 3.  In the ig_config.xml file I changed the view_id from 0, the default, to 2.  Which according to the Views.def file in the HEMU3 default folder should be the "Right" view:

VIEW
{
    NAME = "Right";
    ID = 2;
    GROUP = 1;
    TYPE = 0;
    PROJECTION_TYPE = PERSPECTIVE;
    REPLICATION_MODE = NONE;
    MIRROR_MODE = NONE;
    X_OFFSET = 0;
    Y_OFFSET = 0;
    Z_OFFSET = 0;
    YAW = 80;
    PITCH = 0;
    ROLL = 0;
    TOP = 30;
    BOTTOM = -30;
    LEFT = -40;
    RIGHT = 40;
    NEAR = 1;
    FAR = 100000;
}

Unfortunately when I run my IG_template it still projects the "Front" view aka view_id 0.  Am I missing something with HEMU or with the ig_config.xml file?  Is there someplace in the ig_config.xml that I should define custom views?  Could I define custom out the window views in the property files?  I see that there are different EntityCameras.prop but I thought that was for external views or to simulate things like a FLIR pod.

Link to comment
11 hours ago, Walters.Robert said:

Unfortunately when I run my IG_template it still projects the "Front" view aka view_id 0.  Am I missing something with HEMU or with the ig_config.xml file?  Is there someplace in the ig_config.xml that I should define custom views?  Could I define custom out the window views in the property files?  I see that there are different EntityCameras.prop but I thought that was for external views or to simulate things like a FLIR pod.

We checked this case. Indeed, it does not work! 

HEMU in the view-control package sends ZERO in Roll/Pitch/Yaw Enable fields. 
In accordance with the CIGI ICD 3.3 [4.1.16]  , if these fields are disable, the rotation parameters should be ignored. It seems this is a HEMU bug.

Property EntityCameras.prop does not matter at the moment.

Link to comment
×
×
  • Create New...