In order to have a better idea of their features and limitations, I decided to test them with a program I made, namely this one: http://devilmaster.altervista.org/tadpsid.html
What follows is the profile I have added at the end of profiles.xml:
Code: Select all
<profile game_name="Tadpsid" game_exe="Tadpsid.exe" cpu_architecture="32bit" shaderModRules="Tadpsid.xml" VRboostRules="" minVRboostShaderCount="40" maxVRboostShaderCount="999999" game_type="99999" rollEnabled="false" worldScaleFactor="57.5001" convergence="16.001" swap_eyes="true" ipd_offset="0" use_sdk_pose_prediction="true" y_offset="0" yaw_multiplier="5" pitch_multiplier="5" roll_multiplier="1" position_multiplier="1" position_x_multiplier="2" position_y_multiplier="2.5" position_z_multiplier="0.5" distortion_scale="-6.55651e-007" hud_3D_depth_mode="0" hud_3D_depth_1="0" hud_3D_depth_2="0" hud_3D_depth_3="0" hud_3D_depth_4="0" hud_distance_1="0.0001" hud_distance_2="0.0001" hud_distance_3="0.0001" hud_distance_4="0" hud_key_swap="0" hud_key_default="0" hud_key_small="0" hud_key_large="0" hud_key_full="0" gui_3D_depth_mode="1" gui_3D_depth_1="0" gui_3D_depth_2="0" gui_3D_depth_3="0" gui_3D_depth_4="0" gui_size_1="0.6" gui_size_2="0.5" gui_size_3="0.9" gui_size_4="1" gui_key_swap="111" gui_key_default="0" gui_key_small="0" gui_key_large="0" gui_key_full="0" VRBoost_key_reset="0" WorldFOV="91.2001" PlayerFOV="70.6005" FarPlaneFOV="95" CameraTranslateX="0" CameraTranslateY="0" CameraTranslateZ="0" CameraDistance="0" CameraZoom="0" CameraHorizonAdjustment="0" ConstantValue1="0" ConstantValue2="0" ConstantValue3="0" edge_peek_key="0" />
Code: Select all
<?xml version="1.0"?>
<shaderConfig>
<rules>
<rule constantName="ViewProjectionMatrix" partialName="true" id="1" constantType="MatrixC" modToApply="2" startReg="0" transpose="false" />
<rule constantName="ViewProjectionMatrix" partialName="true" id="9" constantType="MatrixC" modToApply="2" startReg="238" transpose="false" />
<rule constantName="ViewProjectionMatrix" partialName="true" id="2" constantType="MatrixC" modToApply="2" startReg="4" transpose="false" />
<rule constantName="PreviousViewProjectionMatrix" partialName="true" id="3" constantType="MatrixC" modToApply="2" startReg="12" transpose="false" />
<rule constantName="ViewProjectionMatrix" partialName="true" id="4" constantType="MatrixC" modToApply="2" startReg="8" transpose="false" />
<rule constantName="ViewProjectionMatrix" partialName="true" id="5" constantType="MatrixC" modToApply="2" startReg="5" transpose="false" />
<rule constantName="ViewProjectionMatrix" partialName="true" id="6" constantType="MatrixC" modToApply="2" startReg="1" transpose="false" />
<rule constantName="ViewProjectionMatrix" partialName="true" id="7" constantType="MatrixC" modToApply="2" startReg="235" transpose="false" />
<rule constantName="PreviousViewProjectionMatrix" partialName="true" id="8" constantType="MatrixC" modToApply="2" startReg="242" transpose="false" />
<rule constantName="ViewProjectionMatrix" partialName="true" id="10" constantType="MatrixC" modToApply="2" startReg="234" transpose="false" />
<rule constantName="ViewProjectionMatrix" partialName="true" id="11" constantType="MatrixC" modToApply="2" startReg="247" transpose="false" />
<rule constantName="ViewProjectionMatrix" partialName="true" id="12" constantType="MatrixC" modToApply="2" startReg="16" transpose="false" />
<rule constantName="PreviousViewProjectionMatrix" partialName="true" id="13" constantType="MatrixC" modToApply="2" startReg="8" transpose="false" />
<rule constantName="ViewProjectionMatrix" partialName="true" id="14" constantType="MatrixC" modToApply="2" startReg="236" transpose="false" />
</rules>
<defaultRuleIDs>
<ruleID id="1" />
<ruleID id="2" />
<ruleID id="3" />
<ruleID id="4" />
<ruleID id="5" />
<ruleID id="6" />
<ruleID id="7" />
<ruleID id="8" />
<ruleID id="9" />
<ruleID id="10" />
<ruleID id="11" />
<ruleID id="12" />
<ruleID id="13" />
<ruleID id="14" />
</defaultRuleIDs>
<shaderSpecificRuleIDs shaderHash="236630468" squishViewport="true" />
<shaderSpecificRuleIDs shaderHash="2720631710" squishViewport="true" />
</shaderConfig>
With the iz3D drivers, I would simply modify the convergence (so that the closest possible distance is at screen depth) and the separation (so that the farthest possible distance is not too close and not uncomfortably far), but how do I achieve that with the Perception drivers?
I have noticed that modifying the ipd_offset parameter (which, I presume, is supposed to modify the interpupillary distance) has no effect at all (I've tried values of 0, 1, 10 and 1000, and there were no changes at all in the scene). Then I tried the worldScaleFactor parameter, but this just changes the scale along the depth axis. Further tests with it (adjusting it with LCTRL+ALT and the mouse wheel) make me guess that this is the equivalent of the separation parameter in the iz3D driver... but what is the equivalent of the convergence parameter? The actual convergence parameter of the Perception driver has no noticeable effects: I tried changing its value to 0.001, 0.01, 0.1, 1 and 10, and the scene remains absolutely identical in every case!
What am I missing?