|
-
AH
Yeah feel free to. If you're thinking about this @MaGoth, also have a look a this:
https://github.com/withmorten/G12Dll...es/g2fixes.cpp
Fixed CreateVobList works far better than HideFocus currently in SystemPack
Edit:
And now it's getting stupid with the releases, I forgot to add || alwaysVisible to the fadeState check (*twice)
https://github.com/withmorten/G12Dll/releases/tag/1.10
New dll where alwaysVisible is functional. At least it's a nice round number now.
Geändert von withmorten (09.04.2019 um 22:19 Uhr)
Grund: 1.10
-
withmorten
Сan you fill fields in the file properties to read this data from scripts using ikarus to check the name and version of the library. For example, as in the screenshot.
Anhang 48060
Perhaps your research will help get rid of bugs in the DX11 render with other effects from spells ...
https://forum.worldofplayers.de/foru...1#post26044847
-
You mean a *resource with the name etc? Never looked into it, but sure! Seems like a good idea.
I released a new version yesterday btw, AAACTUALLY fixing the freakin thunder to coexist with original Gothic 2 thunder I know I've said that before, but this time it's true And I'm now using the actual zrenderer vftable in case any dll (such as the D3D11 renderer) overwrites some functions.
This wasn't so much as research, as me forgetting to do something Gothic 1 was actually doing when rendering the barrier. Why it works fine with the normal renderer, I have no idea - and that's why I didn't notice it sooner.
It seems that this happens when a FlushPolys is not called after rendering some polygons. So the solution would probably be related to that. But I assume that during spell casting, that FlushPolys is actually called ... I'll leave a message on the issue with a link to this thread.
And just to be sure, does it work now with atmospheric scattering ON or OFF?
Geändert von withmorten (11.04.2019 um 14:31 Uhr)
-
Zitat von withmorten
And just to be sure, does it work now with atmospheric scattering ON or OFF?
As seen in the video above, the barrier effects are work only when the Atmospheric Scattering is turned OFF. In order to avoid problems, the DX11 Render is launched by default with the Atmospheric Scattering turned ON. In all versions DX11 render settings are not saved, each time if I start game with DX11 render I turn OFF Atmospheric Scattering.
-
Right. So ideally the barrier should work with it on. Why does it need to be on at startup and manually turned off? What are the issues when it starts up with it off?
Btw, here it is with resource info
https://github.com/withmorten/G12Dll/releases/tag/1.12
-
Zitat von withmorten
Right. So ideally the barrier should work with it on. Why does it need to be on at startup and manually turned off? What are the issues when it starts up with it off?
With Atmospheric Scattering is turned OFF, fullscreen magic effects (as pray Beliar statue) cause missing dialog UI, as older Barrier versions. Atmospheric Scattering is ON workaround (that replace original Gothic Sky) from this bugs that also OFF barrier.
https://forum.worldofplayers.de/foru...1#post26044847
Zitat von withmorten
Excellent. Thanks.
Geändert von ukur (11.04.2019 um 16:07 Uhr)
-
Well this is obvious - only when AtmosphericScattering is disabled RenderSkyPre from the game even gets called:
[Bild: gbk4cRC.png]
RenderSkyPre is responsible for rendering the barrier. Only way to circumvent this would be changing G3D11 to still call it, and to change my dll to include a second RenderSkyPre function which ONLY renders the barrier and not the original sky when a certain option is enabled ("D3D11AtmosphericScattering=1") or something similar.
I can recompile the D3D11 renderer and could give you such a version, but I'm not sure how I'd get that accepted into the official repo.
Edit: Just saw your answer. So ideally you'd want atmospheric scattering off, with fixed UI effects?
Edit 2: Another thing I can already find is that RenderSkyPost() never gets called, unlike in Gothic II and I. I'll have to look for the appropriate place to call it and test it on my brothers PC.
Geändert von withmorten (11.04.2019 um 16:58 Uhr)
-
Zitat von withmorten
Well this is obvious - only when AtmosphericScattering is disabled RenderSkyPre from the game even gets called:
[Bild: gbk4cRC.png]
RenderSkyPre is responsible for rendering the barrier. Only way to circumvent this would be changing G3D11 to still call it, and to change my dll to include a second RenderSkyPre function which ONLY renders the barrier and not the original sky when a certain option is enabled ("D3D11AtmosphericScattering=1") or something similar.
I can recompile the D3D11 renderer and could give you such a version, but I'm not sure how I'd get that accepted into the official repo.
Edit: Just saw your answer. So ideally you'd want atmospheric scattering off, with fixed UI effects?
For now, I would just like to disable AtmosphericScattering by default, I thought to do this with Ikarus: https://forum.worldofplayers.de/foru...DX-to-Daedalus
There is no need to compile a separate version of the render, so already a whole zoo of forks with crutches
I would like the authors of the current build of the render to take note to the topic and have made, if possible, fixes.
I sight another small bug, if BarrierTremorEnable = 1, then while hero move run, and Barrier tremor, camera can be jump far back as with the original render, and with DX11.
-
Well I was going to make a fork to test, and then try to get it integrated into BonneCWs version, not make my own complete fork, no worries
I added a RenderSkyPost() call after the BspTree rendering from D3D11 is done, will test soon if that helps with the missing dialogue and UI.
Re: AddTremor, yeah, I just added that for fun to see how it looks, but it looks pretty bad when walking. I made a note in the source code that it should be kept disabled, and kept it in just for reference. I'd just disable it and not worry about it EarthQuake might be fun though, happens rarely and lends some credence to Xardas' old tower breaking down.
-
Right, this happens only with screenblend scx VisualFX's. Workaround is to just remove all calls to those in your scripts without* AtmosphericScattering enabled
I've not yet been able to determine WHY this causes the UI to disappear though.
Geändert von withmorten (11.04.2019 um 19:35 Uhr)
-
-
Ne, habe rumprobiert und nicht gefunden warum das nicht vernünftig klappt Einziger workaround ist alle Screenblend FXs rauszunehmen aus dem Spiel. Guck ich mir vielleicht nochmal an, mittlerweile verstehe ich das rendering von Gothic etwas besser.
-
Zitat von withmorten
Ne, habe rumprobiert und nicht gefunden warum das nicht vernünftig klappt Einziger workaround ist alle Screenblend FXs rauszunehmen aus dem Spiel. Guck ich mir vielleicht nochmal an, mittlerweile verstehe ich das rendering von Gothic etwas besser.
Schade zu hören. Vielleicht kann dir ja Bonne weiter helfen.
Wäre cool, wenn du es schaffst. Jede Verbesserung am Renderer ist ein Fortschritt.
-
Hallo
Mh, da müsstest du wahrscheinlich nicht nur das Mesh kleiner machen, sondern dir auch neue Punkte fürs MagicFrontier ausdenken (DoChecK, GetDistance). Das ist nämlich komplett unabhängig voneinander.
Wo finde ich die (DoChecK, GetDistance) im Source der G12Dll oder wo es auch immer zu finden ist?
-
Letzendlich hier:
https://github.com/withmorten/G12Dll.../g2barrier.cpp
1200.0f ist die Warn Distanz, 650.0f die Schuss Distanz.
Man könnte die Barriere "verkleinern", indem man diese Werte vergrößert.
Anscheinend hat Gothic auch irgendeine Möglichkeit Meshes zur Laufzeit zu skalieren - aber nie ausprobiert.
Siehe zCMesh::Scale und zCMesh::ScaleXY.
-
Danke dir.
-
Habe mal mit zCMesh::Scale rumprobiert, dabei passiert nichts sinnvolles bei der Barriere. Insofern muss man evtl diverse unterschiedlich große magicfrontier_out meshes machen und die dann austauschen. Und dann parellel sich den Faktor merken, damit man weiß mit was man die Distanzen zu den Punkten multiplizieren muss (das sind übrigens Meter, laut NicoDE in irgendeinem Post über die Distanzberechnung).
-
Neuling
Barrier doesn't work for me with DX11 (without graphic mod everything is ok), I have effects and etc. but barrier is invisible. Is there anything to do for fix it?
-
Turn Atomospheric Scattering off in the extended options menu you can open with CTRL + F11.
-
Neuling
Got it, thanks.
Edit: One more question. Can I block damage and blue magic effect when character is near the barrier?
Geändert von Dirvo (09.03.2020 um 18:17 Uhr)
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
|
|