-
Notifications
You must be signed in to change notification settings - Fork 226
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
D3D9 atmosphere remake (WIP) #324
Conversation
…er rendering. Fixed some bugs.
…9_atmosphere_remake
Made tests to verify correct operation of the math routines. Added WorldBillboard() routine to Sketchpad to improve planetarium mode drawing. Fixed anomalous wave effects at day/night terminator.
…9_atmosphere_remake
…ts of cleaning to do.
…VPlanet.cpp to VPlanetAtmo.cpp
…ch seem to work well enough. Restored celestial sphere visibility through atmosphere. Started working on atmospheric haze on vessels and base structures.
…d number of bugs.
On launching a scenario, I get a message box Edit: With a debug build, I do get some info in Orbiter.log:
Edit 2: This may be a shot in the dark, but |
I temporarily patched up the previous problem to get a bit further. I now get a message box |
Thanks for the reports. Looks like I forget to re-run the tests with lot of features disabled after making modifications. It's normal for the "pow" instruction to raise a warning if not secured from negative input. The runtimes should be correct if it gets that far, no changes in runtime requirements. |
Looks like there is a problem with shader cache. When a shader is loaded from a cache, feature on/off toggles have no effect since they are applied during compiling. How can I overlook something like this. |
…ular intensity in a simplified fallback mode.
The latest commits are fixing the reported issues for me. Thanks! For what it is worth, I have attached the Earth atmosphere settings I came up with, but I agree that there probably isn't a single configuration that works for everyone, since apart from subjective preferences this is also a matter of monitor/graphics driver characteristics and settings. |
OVP/D3D9Client/VPlanet.cpp
Outdated
MicroTextures[x.file] = x.pTex; | ||
} | ||
else { | ||
LogErr("Failed to read microtexture [%s] for [%s]", file_path, body.first); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LogErr("Failed to read microtexture [%s] for [%s]", file_path, body.first.c_str());
LogErr("Failed to read microtexture [%s] for [%s]", file_path, body.first.c_str());
would be correct as body.first is std::string...
(as noted here https://www.orbiter-forum.com/threads/d3d9client-development.16787/post-604331)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the report. This should be fixed.
Setting The crash was caused by NULL values for the bytes read/bytes written parameters in the ReadFile and WriteFile calls in D3D9Util.cpp. According to the Windows API documentation, these parameters must not be NULL for Windows-7, and I am slightly embarrassed to say that I am currently debugging on a Windows-7 machine. I have committed a fix to provide Windows-7 compatibility. |
…iteFile calls and lpNumberOfBytesRead parameter in ReadFile calls (D3D9Util.cpp). This ensures Windows-7 compatibility.
…isabled shader cache by default. Disable Orbiter log messages regarding cache use.
Regarding the There are several AddOns that would like to use such a folder for non-volatile storage. Currently only the root folder was mainly used for storing configurations or data-files. I like the name So this is just a Request For Comments. [*] D3D9Client should maybe use a sub-folder like |
…re rendering. Added Earth visual configuration selector in a setup dialog. Users can now create own setups without effecting defaults. Checked the default settings for the client. Fixed some bugs.
…users. Fixed missing earth glow when reflections disabled.
…tually loaded before use.
… anti-alias for planets due to white malicious pixels at horizon. Fixed some other minor issues.
-Complete rework of atmospheric rendering and some updates to planet rendering in general.
-Fixed and re-enabled shader cache feature for faster loading.
-Added a Sun glare which can be disabled form setup and adjusted/tuned from graphics controls dialog.
-Added a enable/disable control for the irradiance/dynamic ambient light feature.
-Screen space depth/normal buffer is now available for future SSAO implementation.
-Fixed asteroid/comet rendering bug reported in the forums.