OysterMug Posted January 22, 2022 Share Posted January 22, 2022 I recently installed the paid version of Hook 5 and immediately started doing some "before & after" comparison tests. I'm actually getting worse results (incorrect lighting) with "Hook 5 Paid" than I did with trusty old "Hook 5 Free" (or even OpenGL.) I tried reusing the exact same "main11.fx" file, but it made no difference. Exact same room should not have different/worse lighting. This is particularly concerning as I don't want any AM/LevDef files I share to produce bad/different results simply because the user has the Free or Paid version of H5. Anyone else notice such issues? Is there a "fix"? Link to comment
Foster66 Posted January 22, 2022 Share Posted January 22, 2022 I just installed paid version too and after messing with settings in "F4" menu, where you can add your own light sources, it seems to be on the same level as a free version. That said I didnt really mess with the main file of free version to begin with. 1 Link to comment
OysterMug Posted January 22, 2022 Author Share Posted January 22, 2022 Things is, for the past few weeks, I've been hard at work making a "Hook 4 Level Definition to H5 Converter" (just the LevDef, no objects) and it was coming along nicely. But now, it discovery that H5$ may produce totally different (worse even) results kinda throws a wrench in the works. 1 Link to comment
RidSol Posted January 23, 2022 Share Posted January 23, 2022 From the beginning I used the paid H5 version for the PC and the free version only for my laptop. And whenever I used rooms or skins from one system on the other, I had to change the settings. That's not the fault of H5$ but the minimalism of the free version. The settings in H5$, on the other hand, can be easily changed via the GUI - I wouldn't want to miss it ? 1 Link to comment
Foster66 Posted January 23, 2022 Share Posted January 23, 2022 10 hours ago, OysterMug said: Things is, for the past few weeks, I've been hard at work making a "Hook 4 Level Definition to H5 Converter" (just the LevDef, no objects) and it was coming along nicely. But now, it discovery that H5$ may produce totally different (worse even) results kinda throws a wrench in the works. So did you tried playing with settings in the in-game hook5 menu ? Maybe you can get the results you want by changing the exposure of the light or tunning shadows Link to comment
pes1972 Posted January 23, 2022 Share Posted January 23, 2022 Hook 5 paid is of course best option if you don´t have a really bad pre 2010 pc. It just have more options to configure and you have to put some time into it first few times you use it. Tired of those people not wanting to pay 1$ once to get paid version and instead they try to tell people basic version is just as good or even better?? Of course paid version with all it´s added features is better in every way, you just need to learn how to use it. 1 Link to comment
RidSol Posted January 23, 2022 Share Posted January 23, 2022 The choice of the envmap is important in order to define the basic mood in the room first of all. A user uploaded a bunch of envmaps to MG some time ago (sorry I forgot the name) You can quickly select them in the GUI and try out the mood. I have uploaded them and they are available at - MEGA zipped 755 mb, unzipped 2.8 gb And don't forget to check the colors, positions and angles of the spots... 2 Link to comment
OysterMug Posted January 25, 2022 Author Share Posted January 25, 2022 (edited) (I'm back online.) A lot of users never tweak their "Main11.fx" file (they should), but I look at everything from the standpoint of being able to share my work and have it look right for other users. If H5 users must "tweak" it... which they don't do... just to get the same results, then they are going to get garbage. A few more tests. Same room. Exact same "main11.fx" file. Only difference is H5Free vs H5$ installed (also tried with stock & tweaked H5$ main11.fx files). Results should be the same (or better with H5$.) They're not. Not good. Already posted examples above. Here are two more. My "Loft at Night" (free vs Paid.) Notice the missing overhead light and lack of beam/flame on wall light. Free produces much better results. If H5$ can be tweaked to match, great. But how many H5$ users are even aware they are missing something? Edited January 25, 2022 by OysterMug Link to comment
Daspex Posted January 25, 2022 Share Posted January 25, 2022 This is the reason why i dont use hook5.For every room the main fx must be altered in my opinion and this is simply too much work to me.Also after some time is gone,the game crashes to desktop with paid and free version.Also to create the pass files is very time intensive.For making hd screenshots and comix this may be ok but for creating sequences hook5 is an absolutely no go from what ive experienced. I mostly use OpenGL mode with reshade and some fx shaders .And exept of shaddows it can make a scene looking very good.Just installing hook for better graphics is not needed in my opinion only if you want to have hook objects and other stuff it makes sense but thats not for me. Link to comment
RidSol Posted January 25, 2022 Share Posted January 25, 2022 I don't think the main.fx settings make such a big difference. They can be set right away in the GUI and you can see the result directly. I always use the same main.fx in most rooms and only occasionally change something to try it out. And the lighting of Oystermug's rooms are set in the room's _pass-file... But what I have noticed is that you can have written a _pass-file as carefully as possible, e.g. for body textures, and they are not correctly adopted by the GUI. You have to insert them by hand and it still takes just 5 minutes. With some handwritten settings of lighting as well... Attached is the main.fx I needed for Fight Club - as can be seen in the screenshots. Maybe it will help... And a little video. You can easily use h5m objects and create spots, move them, rotate them by holding the shift key. With the F2/F3 key, the room can be viewed in 3D or the overlaps of the other light sources... Light.mp4 main11.fx 3 Link to comment
Daspex Posted January 25, 2022 Share Posted January 25, 2022 39 minutes ago, RidSol said: I don't think the main.fx settings make such a big difference. They can be set right away in the GUI and you can see the result directly. I always use the same main.fx in most rooms and only occasionally change something to try it out. And the lighting of Oystermug's rooms are set in the room's _pass-file... But what I have noticed is that you can have written a _pass-file as carefully as possible, e.g. for body textures, and they are not correctly adopted by the GUI. You have to insert them by hand and it still takes just 5 minutes. With some handwritten settings of lighting as well... Attached is the main.fx I needed for Fight Club - as can be seen in the screenshots. Maybe it will help... And a little video. You can easily use h5m objects and create spots, move them, rotate them by holding the shift key. With the F2/F3 key, the room can be viewed in 3D or the overlaps of the other light sources... Light.mp4 main11.fx 7.05 kB · 0 downloads Yeah, i know that h5 has a lot of features and im not against it but to me it takes a lot of extra time to learn how to use it and needs probably a lot of ram which i havent yet But i agree that it is a usefull graphical extension if you have enough memory and knowledge.Also the scene extractor is a very useful function. Link to comment
OysterMug Posted January 26, 2022 Author Share Posted January 26, 2022 (edited) 6 hours ago, RidSol said: I don't think the main.fx settings make such a big difference. Tweaking the Main11.fx file can make a tremendous difference. I can provide some examples if you are interested. But the main point is that I don't know what's missing from the H5$ Main11.fx file to suppress the overhead lamp shown in the photo, and even if it can be fixed by tweaking the Main11.fx file, most users don't (or even bother to.) Edited January 26, 2022 by OysterMug Link to comment
Titanoboa Serpentes Posted February 24, 2022 Share Posted February 24, 2022 @OysterMug Hi, from my experience, hook5 paid doesn't work like hook5 free. There has been a lot more updates and changes to hook5 paid than to hook5 free. You can set almost all the "engine" settings in the main.fx file. If you open up the hook5 menu with F4, the settings under Graphics are all saved within the main.fx file. Some default room settings like [customizer_environment] for the Customizer and [default_room_environment] for the initial room that you load in VX are saved in that file. All other room settings have to be made in the _level_definition.txt file. You can use more than one setting text file by simply adding them to the [include] section in the _level_definiton.txt. Your _level_definition.txt has to include the basic settings for the room, or at lest point to a settings text file that has these settings in the [include] section. Something like this: [environment] cubemap = cubecenter = 0.490000, 1.500000, 3.000000 cubesize = 17.500000, 4.000000, 14.700016 cubecolor = 102, 0, 255, 255 parallax_correction = true cubesource_angle = 0.000000 cubesource_scale = 1.000000 cubesource_curve = 1.200000 cubesource_saturation = 1.000000 ambient_color = 255, 255, 251 ambient_intensity = 2.000000 lightmaps_enable = false lightmaps_scale = 1.000000 no_lightmaps_in_cubemap = false no_level_shadows = false sky_intensity = 0.700000 hdr_exposure = 1.100000 hdr_bloom_clamp = 1.000000 hdr_bloom_amount = 0.500000 glow_scale = 0.010000 glow_cubemap_scale = 1.000000 glow_softness = 0.750000 saturation_scale = 1.000000 skybox_enable = true skybox_cubemap =_hook5data\envmaps\kloofendal.dds skybox_angle = 0.000000 skybox_curve = 5.000000 skybox_saturation = 3.500000 sky_glow = 1.000000 fog_base_level = -1.000000 fog_density = 0.000100 fog_height_density_fallof = 0.000100 fog_sun_scattering_amount = 0.001000 fog_sun_halo_amount = 0.010000 fog_sun_halo_spread = 0.100000 fog_affect_sun = 0.500000 fog_color = 84, 147, 200 wind_dir = 0.000000, 0.000000, 0.000000 wind_strength = 0.000000 wind_noise = 0.000000 LUTEnbale = false LUTTexture = LUTTilesSize = 16 LUTTilesAmount = 16 LUTChromaAmount = 0.000000 LUTLumaAmount = 0.000000 as_background = 0 HDRFuncVars_A = 4.700000 HDRFuncVars_B = 0.500000 HDRFuncVars_C = 1.900000 HDRFuncVars_D = 0.050000 EnvDiffuseScale = 1.100000 EnvSpecularScale = 1.000000 [sun_light] type = sunlight enable = true rotation = -129, -54, 50 color = 255, 255, 251 intensity = 2.500000 shadow_param = 10.000000, 200.000000 game_control = false sunrays_enable = true sunrays_check_distance = 20 sunrays_step_size = 0.100000 sunrays_density = 0.000200 shadow_enable = true If you open up the ingame hook5 menu, the button level select opens exactly this file, and you can start to edit it to your liking. The spot and omnilights that are missing in your screenshot have to be manually created, like in RidSol's post. You simply have more freedom with hook5paid to light your rooms and more effects, but it comes with a lot of tweaking and editing. The spotlights and omnilights have different parameters, but the most critical is the shadow bias value. Correctly set, it eliminates the shadow banding/ stripes that might appear on characters and objects. Another thing that strikes me by looking at your pictures is that you have to enable ambient occlusion in the Graphics menu. I hope that helps. Link to comment
OysterMug Posted February 24, 2022 Author Share Posted February 24, 2022 Thanks. I eventually was able to improve my results by extensively tweaking the "main11.fx" file so my LevDefs produce results very close to what I was getting before, but it took some work. Most notably though, I get A LOT of "flickering" of lights/textures with H5U (Unlocked) than I did with H5F (Free.) And to think there are MANY users who have never even touched their "main11.fx" file. ?♂️ Link to comment
Titanoboa Serpentes Posted February 26, 2022 Share Posted February 26, 2022 (edited) @OysterMug Don't mention it. The flickering might have to do with your iShadowPoolCount = value in the main.fx file. If I remember correctly, the omnilights use six shadow targets and the spotlight uses one. So your iShadowPoolCount has to match that value. I first set up all the lighting in the room and then selectively switch on and off those lights that are not used for the camera view. In that way, I can use multiple light settings for different shots. If I want to have a realistic light setup, I put the omnilights or spots in different locations of the 'real' lamps that are in the scene. If you use the sunlight in any of your scenes/ rooms, you can adjust the split value at which the sunshadows are rendered. Another reason for flickering textures might be that the _pass.txt files for the textures are not setup correctly. Try to experiment with the cull_mode = value. Ranges from 0 to 4. 0 Draw all polygons. 1 polygons directed towards camera. 2 polygons directed away from camera. 3 first polygons directed to camera, then polygons turned away from camera. 4 opposite form 3. 3 is used for objects without alpha blending, whereas 4 is used with alpha blending. Something that might also cause flickering is z-fighting. Here are some examples from different rooms I've been modding: The first picture uses only the sunlight, with the sun split values set in a way that no light bleeding is happening at the ceiling. In the second picture, I use omnilights for the candles and spotlights for the ceiling (Not activated in the pictures). The shadow bias value had to be adjusted for every flame to get rid of the shadow banding on the model and the walls. Edited February 26, 2022 by Titanoboa Serpentes 1 Link to comment
OysterMug Posted February 26, 2022 Author Share Posted February 26, 2022 19 hours ago, Titanoboa Serpentes said: @OysterMug Don't mention it. The flickering might have to do with your iShadowPoolCount = value in the main.fx file. Son-of-a-gun, turns out I didn't even HAVE an "iShadowPoolCount" field in my main11.fx file! (used someone else's and tweaked it, never noticing the missing values.) Unfortunately, adding it back (with a default value of 2048) didn't fix the problem. I also tried adding "cull_mode" to the pass files for the table & chairs in my room to see if it had any effect and it didn't. I'm not sure what might be the cause. I captured a short video of what's going on: Video. Any ideas? Thx. Link to comment
Titanoboa Serpentes Posted February 26, 2022 Share Posted February 26, 2022 Hi OysterMug, the iShadowPoolCount value is far too high. I assume the flickering in the video comes from the iShadowPoolCount. I think pervokpetr mentioned that a value of 24 might best for performance. The value that you used is the iShadowMapSize = 2048. The MapSize defines how defined the shadows will look. So the math behind it is that you simply sum up all the shadow targets of your omnilights and spotlights. So if you have for example three omnilights and two spotlights you have to have at least a minimum iShadowPoolCount value of 20. If you put the iShadowMapSize = 2048 you will have at most 20 shadows that are baked at runtime into the 2048 shadow map. So the overall shadow targets in your scene should not exceed the IShadowPoolCount value. The flickering is the result of that value. If you use 2048 you will have 2048 shadow targets. I don't know what happens if you put in such a large number, but I think it simply reverts to the default value. I would use a value of 24 and then go upwards from that. I put my content of my main.fx here for you to check against. If I were to fix the room I would first try to change the number light in such a way that the subjective impression stay the same while keeping the number of lights to a minimum. In the above images of my earlier post I first used three omnilights for each candle. It turned out to eat up lots of fps and to get rid of the flickering was almost impossible let alone for the shadow banding. But it looked the most realistic. Eliminating two omnilights got rid of all the flickering and banding. I just had to place it in a spot inbetween the candles to get nice shadows on my character and the walls of the room. [global_constants] ;to apply changes for this constants you need recompile shaders ;Delay initialization to first resource creation - cause faster run on win10, but cause crash in fullscreenmode iDelayedInitialization = 1 iShadowPoolCount = 24 iShadowMapSize = 2048 iLightPackMode = 0 iPhysXSolverIterations = 15 ;iUseMSAA - 0:No MSAA, 1 - MSAAx2, 2 - MSAAx4, 3 - MSAAx8, iUseMSAA = 0 ;keybinds - key_num, shift_state, ctrl_state, 122=F11, 113= F2, 114= F3, 120= F9, 115 =F4, 44= PrintScreen, 119= F8 funcRecompile = 122, 0, 1 funcBoundview = 113, 0, 1 funcSeparation = 114, 0, 0 funcCubemap = 120, 0, 1 funcHookGui = 115, 0, 0 funcScreeshot = 44, 0, 0 funcHiResScreeshot = 44, 0, 1 funcDOF = 119, 0, 1 funcCamera = 114, 0, 1 ;all other settings will reload automatically [global_settings] fFovMultiplier = 0.950000 iProfileEnable = 0 iTextureTrackingEnable = 0 iLevelDefinitionTrackingEnable = 0 iSettingsTrackingEnable = 0 iEnableBackgroundRendering = 0 iUseCubemapPrepass = 1 iMultithreadRenderEnable = 0 iMaxThreads = 16 iDoVSynhInWindowed = 1 iUseSeparateShadows = 0 iUseHalfSSAOTargets = 1 fResolutionScale = 1.000000 iHairworksMSAA = 1 ;0-bmp, 1- jpg, 2 - png cScreenshotFolder =C:\Games\The Klub 17 VX\Screenshots iScreenshotFormat = 1 cSharedHookFolder = ;iSeparationMode - 0:Anaglyph, 1:SideBySide, 2:OculusHome 3:SideBySide2 4:OpenVR [anaglyph] iSeparationMode = 0 fAnaglyphSeparation = 0.050000 fAnaglyphConvergent = 1.242000 iOVREnableReflection = 0 iOpenVRGammaFix = 1 fUIScaleH = 0.400000 fUIScaleV = 0.300000 fSBSBarrelStrength = 1.000000 fSBSFovScaleH = 0.500000 fSBSFovScaleV = 0.500000 fSBSScale = 1.000000 fSBSOffsetX = 0.000000 [render_settings] iUseDebug = 0 iUseDiffuseLUT = 0 iUseSpecularLUT = 0 iUseSkinWetness = 1 fSkinWetness = 0.000000 iSubsurfaceEnable = 1 fSubsurfaceTakeColor = 0.500000 iSubsurfaceExcludeIBL = 0 fSubsurfaceSpecularIBL = 1.000000 iEpidermalSteps = 5 fEpidermalRadius = 0.750000 iSubdermalSteps = 5 fSubdermalRadius = 0.750000 fDiffuseAmount = 0.100000 fEpidermalAmount = 0.725000 fSubdermalAmount = 0.175000 iUseEyeShadowing = 1 fEyeIrisSize = 0.800000 fEyeIrisDepth = 0.500000 fEyeShiftUp = 0.500000 fEyeSpecular = 2.000000 fEyeReflectionAmount = 0.100000 iSSAOEnable = 0 fSSAORadius = 6.000000 fSSAOStrength = 25.000000 fSSAOUnderDirectional = 0.100000 fSSAOBias = 0.050000 iSSAOBlurEnable = 1 iSSAONormalsEnable = 1 fSSAONormalsFade = 0.100000 iMXAOSteps = 64 iHBAODetailEnable = 1 iSSLREnable = 0 iSSLRStepSize = 30 iSSLRStepsCount = 60 fSSLRSkipThreshold = 0.000000 iOutlineEnable = 0 fOutlineAmount = 0.100000 fOutlineThreshold = 10.000000 iDOFEnable = 1 iDOFType = 0 iDOFSteps = 1 fDOFFocusSpeed = 1.000000 fDOFFocusDistance = 2.000000 fDOFBokehBias = 0.0 fDOFBokehBiasCurve = 0.65 fDOFBokehBrightnessThreshold = 1.000000 fDOFBokehBrightnessMultipiler = 2.000000 fDOFRadiusScaleMultiplier = 0.200000 iSMAAEnable = 1 iSMAAQuality = 4 iGlowEnable = 1 fGlowAmount = 1.000000 iHDRBloomEnable = 2 iHDRFuncType = 1 iSharpenEnable = 1 fSharpenAmount = 0.200000 iGrainEnable = 0 fGrainSize = 0.100000 fGrainAmount = 0.200000 iChromaticAberrationEnable = 1 fChromaPower = 0.030000 fMotionBlurAmount = 0.050000 fCinemaLines = 0.000000 RGBOffset = 0.000000, 0.000000, 0.000000 iShadowEnable = 1 iShadowBlurStep = 3 iShadowBlurStepAlpha = 3 fImageSaturation = 1.000000 iHiResScreenScale = 3 ;customizer settings--------------------------------------------------------------------------------- iIBLMaskEnable = 1 iIBLMaskOnlySkin = 1 iIBLMaskSteps = 10 fIBLMaskAmount = 0.400000 [customizer_environment] cubemap = _hook5data\envmaps\garage.dds cubecenter = 0.000000, 2.439999, 0.000000 cubesize = 4.000000, 2.500000, 4.000000 cubecolor = 0, 0, 255, 80 parallax_correction = true ambient_color = 255, 255, 255 ambient_intensity = 1.000000 sky_intensity = 3.000000 hdr_exposure = 1.500000 hdr_bloom_clamp = 1.000000 hdr_bloom_amount = 1.000000 skybox_enable = false skybox_cubemap = cubesource_angle = 0.000000 cubesource_scale = 4.000000 cubesource_curve = 1.000000 cubesource_saturation = 1.000000 glow_scale = 1.000000 saturation_scale = 1.000000 skybox_angle = 0.000000 skybox_curve = 1.000000 skybox_saturation = 1.000000 fog_base_level = 0.000000 fog_density = 0.000000 fog_height_density_fallof = 0.000000 fog_sun_scattering_amount = 0.000000 fog_sun_halo_amount = 0.000000 fog_sun_halo_spread = 0.000000 fog_affect_sun = 0.000000 fog_color = 255, 255, 255 lightmaps_enable = false lightmaps_scale = 1.000000 no_lightmaps_in_cubemap = false no_level_shadows = false glow_cubemap_scale = 1.000000 glow_softness = 0.750000 as_background = 0 sky_glow = 0.000000 wind_dir = 0.000000, 0.000000, 0.000000 wind_strength = 0.000000 wind_noise = 0.000000 LUTEnbale = false LUTTexture = LUTTilesSize = 16 LUTTilesAmount = 16 LUTChromaAmount = 0.000000 LUTLumaAmount = 0.000000 VXGI_Enable = 0 VXGI_AOEnable = 1 VXGI_DiffuseEnable = 1 VXGI_SpecularEnable = 0 VXGI_Quality = 0.100000 VXGI_SamplingRate = 1.000000 VXGI_VoxelSize = 0.040000 VXGI_AOScale = 1.000000 VXGI_AOBias = 0.000000 VXGI_AOCurve = 1.000000 VXGI_AODistance = 1.000000 VXGI_SurfaceInitialOffset = 1.000000 VXGI_SurfaceInitialDistanceFactor = 1.000000 VXGI_LightLeaking = 0 VXGI_TracingResolutionDivider = 4 VXGI_DiffuseScale = 1.000000 VXGI_SpecularScale = 1.000000 VXGI_EmmitanceDirectionScale = 1.000000 VXGI_EmmitanceGlowScale = 3.000000 HDRFuncVars_A = 4.700000 HDRFuncVars_B = 0.500000 HDRFuncVars_C = 1.900000 HDRFuncVars_D = 0.050000 EnvDiffuseScale = 1.000000 EnvSpecularScale = 1.000000 [customizer_sunlight] type = sunlight enable = true rotation = 221, -4, 0 color = 210, 210, 210 intensity = 1.500000 shadow_param = 0.000000, 0.000000 game_control = true sunrays_enable = true sunrays_check_distance = 20 sunrays_step_size = 0.200000 sunrays_density = 0.000100 ;default room settings--------------------------------------------------------------------------------- shadow_enable = true [default_room_environment] cubemap = ; _hook5data\envmaps\EveningField.dds cubecenter = 0.000000, 0.000000, 0.000000 cubesize = 15.000000, 15.000000, 15.000000 cubecolor = 0, 0, 255, 80 parallax_correction = true ambient_color = 255, 255, 255 ambient_intensity = 1.000000 sky_intensity = 1.000000 hdr_exposure = 3.000000 hdr_bloom_clamp = 1.000000 hdr_bloom_amount = 1.000000 skybox_enable = false skybox_cubemap = skybox_angle = 0.000000 cubesource_scale = 1.000000 cubesource_curve = 1.000000 cubesource_angle = 0.000000 glow_scale = 1.000000 saturation_scale = 1.000000 cubesource_saturation = 1.000000 lightmaps_enable = false glow_cubemap_scale = 1.000000 glow_softness = 0.750000 skybox_curve = 1.000000 skybox_saturation = 1.000000 sky_glow = 1.000000 fog_base_level = 0.000000 fog_density = 0.000000 fog_height_density_fallof = 0.000000 fog_sun_scattering_amount = 0.000000 fog_sun_halo_amount = 0.000000 fog_sun_halo_spread = 0.000000 fog_affect_sun = 0.000000 fog_color = 255, 255, 255 wind_dir = 0.000000, 0.000000, 0.000000 wind_strength = 0.000000 wind_noise = 0.000000 lightmaps_scale = 1.000000 no_lightmaps_in_cubemap = false no_level_shadows = false as_background = 0 LUTEnbale = false LUTTexture = LUTTilesSize = 16 LUTTilesAmount = 16 LUTChromaAmount = 0.000000 LUTLumaAmount = 0.000000 VXGI_Enable = 0 VXGI_AOEnable = 1 VXGI_DiffuseEnable = 1 VXGI_SpecularEnable = 0 VXGI_Quality = 0.100000 VXGI_SamplingRate = 1.000000 VXGI_VoxelSize = 0.040000 VXGI_AOScale = 1.000000 VXGI_AOBias = 0.000000 VXGI_AOCurve = 1.000000 VXGI_AODistance = 1.000000 VXGI_SurfaceInitialOffset = 1.000000 VXGI_SurfaceInitialDistanceFactor = 1.000000 VXGI_LightLeaking = 0 VXGI_TracingResolutionDivider = 4 VXGI_DiffuseScale = 1.000000 VXGI_SpecularScale = 1.000000 VXGI_EmmitanceDirectionScale = 1.000000 VXGI_EmmitanceGlowScale = 3.000000 HDRFuncVars_A = 4.700000 HDRFuncVars_B = 0.500000 HDRFuncVars_C = 1.900000 HDRFuncVars_D = 0.050000 EnvDiffuseScale = 1.000000 EnvSpecularScale = 1.000000 [default_room_sunlight] type = sunlight enable = true rotation = 225, 310, 0 color = 255, 231, 202 intensity = 1.000000 shadow_param = 5.000000, 60.000000 game_control = true sunrays_enable = true sunrays_check_distance = 20 sunrays_step_size = 0.100000 sunrays_density = 0.000100 shadow_enable = true [gui_settings] select_mode = 0 You can ignore all the VXGI values since pervokpetr unfortunately hasn't implemented VXGI yet. Hopefully he will do so again sometimes because that would simply be the last step in realism. By the way what room do you use in your video? Link to comment
OysterMug Posted February 27, 2022 Author Share Posted February 27, 2022 Thx. Slight goof on my part. my "iShadowPoolCount" is also 24. I accidentally read the line below ("iShadowMapSize") set to 2048. Your Main11.fx contains a lot more fields than the one I used. Unfortunately, using your settings didn't resolve the issue. I think I've noticed flickering in other rooms, but I'm not sure which. The only one I know for sure has trouble is this one ("Single Apartment"). That suggested the problem is its LevDef, not my "Main11.fx". I'm not sure if the Room is available for download. Let me know. I uploaded my "Main11.fx" here. You can try it to see if it creates "flicker". Thx Link to comment
RidSol Posted February 27, 2022 Share Posted February 27, 2022 (edited) Yes, it seems to be the _levdef. I assume you are using the "old" file that was made at the time the room was created. In the first part of the video I used an old _levdef with few lights. In the second part one with envmap and without lights.... Old-New_levdef.mp4 Oh yeah - I took the first _levdef I found and didn't change any setting. You can always do that later ;o) However, the location of the envmap should be adjusted. Usually _hook5data\envmaps\(whatever).dds. The coordinates of the original file can be used for the spot and omni lights, but color, intensity etc must be adjusted in the GUI... _level_definition.7z Edited February 27, 2022 by RidSol completition Link to comment
OysterMug Posted February 28, 2022 Author Share Posted February 28, 2022 (edited) (Video link is broken. ) Thx for the follow-up. I'm not sure why, but your revised LevDef doesn't solve the problem. Not sure why. The only things left are my video card (an old GTX970) and/or my textures. I might try scaling them down to see if my 970 handles them better. I found another room with flicker, but oddly, what flickers is Actor 1's hair... which is the same no matter the room. Bizarre. Edited February 28, 2022 by OysterMug Link to comment
Titanoboa Serpentes Posted February 28, 2022 Share Posted February 28, 2022 (edited) Hi OysterMug, I compared your main.fx with mine. The iUseSeparateShadows might be one reason the shadows are flickering or, like in RidSol's video, get switched on and off. I had to leave them off in order to get rid of flickering lights in the distance in the spa room. The other thing that I can think of is the camera frustrum. If you have different lights defined in your level_definition.txt, you have to make sure that you don't use too many shadow casting lights that are in camera view. In your video, the chairs have I assume three shadows. That means that you have three lights defined. If you move the camera, the shadows are rendered, but if they exceed the iShadowPoolcount value they aren't rendered at all. It all depends on the lights in the camera view. Try to increase the value until the flickering ends. I would try a value of let's say 48. The GTX 970 is fine for hook5 paid. I use a GTX 980ti. But I would definitely scale down the textures because the 970 only uses 3.5 GB of memory with full bandwidth. The last 512 MB are at half bandwidth, if I recall that correctly, so you might get micro stuttering if the 3.5 GB are exceeded. Here's a the _level_definition for the Asian Living room: [include] _fire.txt = true _lights.txt = false _candles.txt = false _nighttime.txt = false _daytime.txt = true _mirrors.txt = false I only use the include section to quickly switch between different lighting setups. And here's the _daytime.txt and _nighttime.txt _ daytime.txt Spoiler [environment] cubemap = ambient_color = 255, 241, 224 ambient_intensity = 5.000000 parallax_correction = true sky_intensity = 1.000000 hdr_exposure = 1.100000 hdr_bloom_clamp = 1.000000 hdr_bloom_amount = 0.000100 cubecenter = 0.250000, 2.050000, 1.300000 cubesize = 4.200005, 2.410000, 3.860000 cubecolor = 255, 0, 255, 100 skybox_enable = true skybox_cubemap =_hook5data\envmaps\autumn_hockey_envmap.dds cubesource_angle = 0.000000 cubesource_scale = 1.000000 cubesource_curve = 1.200000 cubesource_saturation = 1.000000 lightmaps_enable = false lightmaps_scale = 1.000000 no_lightmaps_in_cubemap = false no_level_shadows = false glow_scale = 0.000000 glow_cubemap_scale = 0.000000 glow_softness = 0.750000 saturation_scale = 1.000000 skybox_angle = 30.000002 skybox_curve = 1.000000 skybox_saturation = 1.000000 sky_glow = 1.000000 fog_base_level = 0.000000 fog_density = 0.000000 fog_height_density_fallof = 0.000000 fog_sun_scattering_amount = 0.000000 fog_sun_halo_amount = 0.000000 fog_sun_halo_spread = 0.000000 fog_affect_sun = 0.000000 fog_color = 255, 255, 255 wind_dir = 0.000000, 0.000000, 0.000000 wind_strength = 0.000000 wind_noise = 0.000000 LUTEnbale = false LUTTexture = LUTTilesSize = 16 LUTTilesAmount = 16 LUTChromaAmount = 0.000000 LUTLumaAmount = 0.000000 as_background = 0 VXGI_Enable = 1 VXGI_AOEnable = 1 VXGI_DiffuseEnable = 1 VXGI_SpecularEnable = 0 VXGI_Quality = 0.100000 VXGI_SamplingRate = 1.000000 VXGI_VoxelSize = 0.040000 VXGI_AOScale = 1.000000 VXGI_AOBias = 0.000000 VXGI_AOCurve = 1.000000 VXGI_AODistance = 1.000000 VXGI_SurfaceInitialOffset = 1.000000 VXGI_SurfaceInitialDistanceFactor = 1.000000 VXGI_LightLeaking = 0 VXGI_TracingResolutionDivider = 4 VXGI_DiffuseScale = 1.000000 VXGI_SpecularScale = 1.000000 VXGI_EmmitanceDirectionScale = 1.000000 VXGI_EmmitanceGlowScale = 3.000000 HDRFuncVars_A = 4.700000 HDRFuncVars_B = 0.500000 HDRFuncVars_C = 1.900000 HDRFuncVars_D = 0.050000 EnvDiffuseScale = 1.000000 EnvSpecularScale = 1.000000 [sun_light] type = sunlight enable = true rotation = 210, 82, 0 color = 255, 255, 255 intensity = 3.000000 shadow_param = 5.000000, 10.000000 game_control = false sunrays_enable = true sunrays_check_distance = 10 sunrays_step_size = 0.040000 sunrays_density = 0.001100 shadow_enable = true _nighttime.txt Spoiler [environment] cubemap = ambient_color = 255, 241, 224 ambient_intensity = 1.500000 parallax_correction = true sky_intensity = 0.035000 hdr_exposure = 1.000000 hdr_bloom_clamp = 1.000000 hdr_bloom_amount = 1.000000 cubecenter = 0.250000, 2.090000, 1.400000 cubesize = 4.120003, 2.430000, 3.830000 cubecolor = 255, 0, 255, 100 skybox_enable = true skybox_cubemap =_hook5data\envmaps\autumn_hockey_envmap.dds cubesource_angle = 0.000000 cubesource_scale = 1.000000 cubesource_curve = 1.100000 cubesource_saturation = 1.000000 lightmaps_enable = false lightmaps_scale = 1.000000 no_lightmaps_in_cubemap = false no_level_shadows = false glow_scale = 1.000000 glow_cubemap_scale = 1.000000 glow_softness = 0.750000 saturation_scale = 1.000000 skybox_angle = 30.000002 skybox_curve = 1.000000 skybox_saturation = 1.000000 sky_glow = 0.100000 fog_base_level = 0.000000 fog_density = 0.000000 fog_height_density_fallof = 0.000000 fog_sun_scattering_amount = 0.000000 fog_sun_halo_amount = 0.000000 fog_sun_halo_spread = 0.074000 fog_affect_sun = 0.142000 fog_color = 255, 177, 161 wind_dir = 0.000000, 0.000000, 0.000000 wind_strength = 0.000000 wind_noise = 0.000000 LUTEnbale = false LUTTexture = LUTTilesSize = 16 LUTTilesAmount = 16 LUTChromaAmount = 0.000000 LUTLumaAmount = 0.000000 as_background = 0 VXGI_Enable = 1 VXGI_AOEnable = 1 VXGI_DiffuseEnable = 1 VXGI_SpecularEnable = 0 VXGI_Quality = 0.100000 VXGI_SamplingRate = 1.000000 VXGI_VoxelSize = 0.040000 VXGI_AOScale = 1.000000 VXGI_AOBias = 0.000000 VXGI_AOCurve = 1.000000 VXGI_AODistance = 1.000000 VXGI_SurfaceInitialOffset = 1.000000 VXGI_SurfaceInitialDistanceFactor = 1.000000 VXGI_LightLeaking = 0 VXGI_TracingResolutionDivider = 4 VXGI_DiffuseScale = 1.000000 VXGI_SpecularScale = 1.000000 VXGI_EmmitanceDirectionScale = 1.000000 VXGI_EmmitanceGlowScale = 3.000000 HDRFuncVars_A = 4.700000 HDRFuncVars_B = 0.500000 HDRFuncVars_C = 1.900000 HDRFuncVars_D = 0.050000 EnvDiffuseScale = 1.000000 EnvSpecularScale = 1.000000 [sun_light] type = sunlight enable = true rotation = 211, 77, 10 color = 215, 229, 255 intensity = 1.000000 shadow_param = 5.000000, 10.000000 game_control = false sunrays_enable = true sunrays_check_distance = 10 sunrays_step_size = 0.040000 sunrays_density = 0.001100 shadow_enable = true The _daytime and _nighttime.txt don't have any lights defined except the [sun_light] parameters. The lights are defined in the _lights.txt Spoiler [omni_square_lamp] enable = true type = omnilight position = 2.801993, 1.082447, 1.932288 color = 255, 233, 217 intensity = 1.200000 diffuse_only = false near = 0.300000 source_radius = 0.050000 source_curve = 1.200000 range_fade = 1 cast_shadow = true shadow_bias = 0.004020 clamp_range = 0.000000 bound_color = 255, 229, 51, 153 script_name = parent_name = [spot_ceiling_1] enable = false type = spotlight position = 2.240171, 4.083334, -1.141430 rotation = -90.000000, 0.000000, 0.000000 color = 255, 241, 224 intensity = 2.500000 diffuse_only = false fov = 1.360000 near = 0.950000 source_radius = 0.001000 source_curve = 1.200000 range_fade = 1 fov_fade = 1 cast_shadow = true shadow_bias = 0.004730 clamp_range = 0.000000 bound_color = 255, 229, 51, 153 script_name = parent_name = [spot_ceiling_2] enable = true type = spotlight position = 0.235473, 4.122234, -1.134691 rotation = -90.000000, 0.000000, 0.000000 color = 255, 241, 224 intensity = 2.500000 diffuse_only = false fov = 1.360000 near = 0.950000 source_radius = 0.001000 source_curve = 1.200000 range_fade = 1 fov_fade = 1 cast_shadow = true shadow_bias = 0.004730 clamp_range = 0.000000 bound_color = 255, 229, 51, 153 script_name = parent_name = [spot_ceiling_3] enable = false type = spotlight position = -1.770833, 4.130161, -1.135023 rotation = -90.000000, 0.000000, 0.000000 color = 255, 241, 224 intensity = 2.500000 diffuse_only = false fov = 1.360000 near = 0.950000 source_radius = 0.001000 source_curve = 1.200000 range_fade = 1 fov_fade = 1 cast_shadow = true shadow_bias = 0.004730 clamp_range = 0.000000 bound_color = 255, 229, 51, 153 script_name = parent_name = [spot_ceiling_4] enable = true type = spotlight position = -1.772563, 4.099203, 3.913965 rotation = -90.000000, 0.000000, 0.000000 color = 255, 241, 224 intensity = 2.500000 diffuse_only = false fov = 1.360000 near = 0.950000 source_radius = 0.001000 source_curve = 1.200000 range_fade = 1 fov_fade = 1 cast_shadow = true shadow_bias = 0.004730 clamp_range = 0.000000 bound_color = 255, 229, 51, 153 script_name = parent_name = [spot_ceiling_5] enable = false type = spotlight position = 0.236814, 4.107139, 3.912316 rotation = -90.000000, 0.000000, 0.000000 color = 255, 241, 224 intensity = 2.500000 diffuse_only = false fov = 1.360000 near = 0.950000 source_radius = 0.001000 source_curve = 1.200000 range_fade = 1 fov_fade = 1 cast_shadow = true shadow_bias = 0.004730 clamp_range = 0.000000 bound_color = 255, 229, 51, 153 script_name = parent_name = [spot_ceiling_6] enable = true type = spotlight position = 2.245612, 4.107448, 3.908663 rotation = -90.000000, 0.000000, 0.000000 color = 255, 241, 224 intensity = 2.500000 diffuse_only = false fov = 1.360000 near = 0.950000 source_radius = 0.001000 source_curve = 1.200000 range_fade = 1 fov_fade = 1 cast_shadow = true shadow_bias = 0.004870 clamp_range = 0.000000 bound_color = 255, 229, 51, 153 script_name = parent_name = [omni_table_lamp] enable = true type = omnilight position = -1.638718, 0.858202, -0.585030 color = 255, 233, 217 intensity = 1.500000 diffuse_only = false near = 0.120000 source_radius = 0.005000 source_curve = 1.000000 range_fade = 1 cast_shadow = true shadow_bias = 0.001040 clamp_range = 0.000000 bound_color = 255, 128, 0, 128 script_name = parent_name = [omni_main_lamp_1] enable = false type = omnilight position = 0.230000, 3.238310, 1.109232 color = 255, 233, 217 intensity = 1.500000 diffuse_only = false near = 0.200000 source_radius = 0.001000 source_curve = 1.000000 range_fade = 1 cast_shadow = true shadow_bias = 0.004640 clamp_range = 0.000000 bound_color = 255, 128, 0, 128 script_name = parent_name = [omni_main_lamp_2] enable = false type = omnilight position = 0.230000, 3.238310, 1.668491 color = 255, 233, 217 intensity = 1.500000 diffuse_only = false near = 0.200000 source_radius = 0.001000 source_curve = 1.000000 range_fade = 1 cast_shadow = true shadow_bias = 0.004640 clamp_range = 0.000000 bound_color = 255, 128, 0, 128 script_name = parent_name = The shadow_bias and clamp_range might be important. The clamp_range gives you control over the range the shadows are drawn. If you lower that value you can see that the shadows are cut off right in the viewport of the camera. The shadow_bias value can be adjusted to get rid of banding artifacts if two or more shadows interact or if banding occurs on walls and objects. Another significant factor is the environmental bound. You have to adjust the size of the environmental bound that it completely encompasses the room or structure/ objects. Activate the Use Parallax Correction checkbox, too. I found that it also affects the shadow rendering. Edited February 28, 2022 by Titanoboa Serpentes 2 Link to comment
Titanoboa Serpentes Posted February 28, 2022 Share Posted February 28, 2022 @RidSol The strange moving vertical shadow that is moving when you move the camera might be the result of the shadow_param parameter. In the ingame menu, you can set them in the sunlight section of the level definition. It's the first split and max range value. 1 Link to comment
RidSol Posted February 28, 2022 Share Posted February 28, 2022 Aha, okay - I have not had this phenomenon before. I randomly picked a _levdef file for this test. But it's good to know, thank you very much ? Link to comment
OysterMug Posted March 1, 2022 Author Share Posted March 1, 2022 (edited) 23 hours ago, Titanoboa Serpentes said: Hi OysterMug, I compared your main.fx with mine. The iUseSeparateShadows might be one reason the shadows are flickering or, like in RidSol's video, get switched on and off. I had to leave them off in order to get rid of flickering lights in the distance in the spa room. Thx for the reply. I tried switching off "iUseSeparateShadows" in my "Main11.fx" (by setting it to 0) but nothing changed. I also tried upping "iShadowPoolcount" to 48 but that too had no effect. The room is "Single Apartment 337", an old H4 room from 2016. No flicker under H4 (it can be difficult to get H4 to work with VX as H4 is a memory hog.) I converted the old H4 LevDef using my "H4 to H5 LevDef Converter" (still in Beta), so it is possible something about the conversion needs to be adjusted, though I can't imagine what. If it IS something lacking or wrong in my conversion, I need to know so I can fix it. I've upload the room here. I included my converted H5-conpatible LevDef so others can see if they experience the same problem and can find a fix. Thx. Edited March 1, 2022 by OysterMug Link to comment
Titanoboa Serpentes Posted March 2, 2022 Share Posted March 2, 2022 (edited) Hi OysterMug, thanks for the room upload. I took a quick look at your level definition file. The original H4 one and the H5 that you converted. Here are some findings/ suggestions: The RGB values have to be three integer values each, e.g. 127,123,255. I don't know what the last value of the color value is (maybe Alpha), but the first three values have to be converted by multiplying with 255. You have 29 spotlights in your _level_definition.txt file and a sunlight. That means at lest 30 shadow targets. They also miss certain parameters like enable = true/false, intensity = x, diffuse_only = true/false, source_radius = x, source_curve = x, cast_shadow = true, shadow_bias = x, clamp_range = 0.000000. I have the same flickering with your _level_definition.txt (H5) like in the video you uploaded earlier. In my opinion, there are far too many lights in that level definition and the textures have wrong spec maps. The blue channel is used for glow in H5 and the green channel is used for specularity. The red channel of the spec map is used for metallicity, so for example, the kitchen counters have a metallic finish to them. I don't know about the way hook4 uses those channels in the spec map, but if you want to convert a room from Hook4 to Hook5 you also have to redo the spec maps and normal maps. Several spotlights seemed to have been duplicated by the conversion and the rotation values have been changed or mixed up. The _pass files for the textures don't use the correct object name. Hook5 doesn't use BumpedCloth, but CustomStatic, and you have to have normal maps for each texture. I will correct the complete room and send you the files to compare. Above image: Normal debug view. The normals are autogenerated, so there is no surface definition. Above: Specular texture applied with exaggerated glow_intensity parameter in the _pass file. Below: Corrected spotlights for the table and all textures fixed. Hopefully you can adjust your converter. I will come back to you with the fixed room. Edited March 2, 2022 by Titanoboa Serpentes Link to comment
Recommended Posts