Comments (23)
Does this also occur with the "Smoove" rendering mode? And do you have any other Boxer-wrapped GOG apps to test this rendering mode out with?
from boxer.
Smoove works. Blank screen also on Worlds of Ultima: The Savage Empire.
from boxer.
Interesting that Smoove works and Retro doesn't - that implies a shader-specific bug.
This probably isn't a 10.9 issue per se, as Retro works fine in 10.9 on my MacbookAir3,2. It's more likely to be related to your Macbook model's graphics hardware (though it's possible they also broke something in 10.9's drivers for it.)
What graphics chipset does the Macbook have? And did you try playing these games on the same Macbook on an earlier version of OS X?
from boxer.
This model has Intel HD Graphics 5000, 1024 MB. Unfortunately I didn't play the GOG variant of the game pre-10.9.
from boxer.
Could you test if this alpha build of Boxer 2.0 exhibits the blank-screen problem in Retro mode also:
https://www.dropbox.com/s/xavh9eewut7p6u8/boxer-2.0alpha-20131012.1.zip
This bug won't be game-specific, so you can just test with a DOS prompt.
(Note that if you have an existing copy of Boxer 1.3.2, I do not recommend replacing it with this version - there's a great deal that is missing or broken in alpha currently.)
from boxer.
Confirmed problem still occurring in 2.0alpha.
from boxer.
OK, this means a fun round of Working Out Why Someone Else's Shader Code Is Broken On A Chipset I Don't Have!
Are you able to build Boxer from source / do you know your way around a GLSL shader definition? If so, I can suggest individual code changes for you to try. If not, then I'll try do speculative changes myself and upload a new build for you to try.
from boxer.
You mean WOWSESCIBOACIDH isn't your favourite activity in the whole world? ;)
I have Xcode but I must confess I use it mostly for iOS Simulator (web dev) - compiling from source I receive the following issue in two separate files:
'Property 'fileSystemRepresentation' not found on object of type 'NSURL *''
from boxer.
On the contrary, I've been looking forward to another round of it all summer!
OK, the first thing you could try is to open Resources -> Shaders -> crt-geom-interlaced-curved.shader (this is the shader for the Retro rendering style), and find-replace the following text:
const vec2 angle = vec2(0.0,0.001);
with this:
const vec2 angle = vec2(0.001,0.001);
Then recompile Boxer and run it from within XCode.
Also note that if the shader fails to load altogether, it should display a message in XCode's debug output panel - this might reveal a chipset-specific error in your case.
(The filesystemRepresentation warning is just a red herring and can be safely ignored.)
from boxer.
Forgive me, how do I get past the fileSystemRepresentation issue? The build is failing because of it.
from boxer.
Ah, sorry, didn't realise it was an error rather than a warning. I've fixed it now, so if you pull again it should build properly.
from boxer.
Just seen your commit - I'm on OS X 10.9, Xcode 5.0 and error remains after pulling latest.
from boxer.
Ah - typo, ADBForwardCompatibility.h - fileSystemRepresentation not filesystemRepresentation. Compiles now.
from boxer.
OK, shader modification you suggested didn't appear to change anything. Debug panel shows nothing out of the ordinary.
from boxer.
OK, the fileSystemRepresentation typo is now fixed. I'll take a closer look through the shader code and give you some more suggestions to try later this week.
Just to confirm: you get the blank screen regardless of whether Boxer is windowed or fullscreen, right?
from boxer.
Confirmed.
from boxer.
Hi, I'm having the same problem with a black screen on a Late 2012 MacBook Pro with an Intel HD 4000 video card.
Not sure why, but the problem seems to disappear if I change line 68 in shader's code from
float D = d/R + x*cosangle.x*cosangle.y+dot(uv,sinangle);
to
float D = d/R + x*cosangle.x*cosangle.y;
At least it seems to work and look fine after that.
from boxer.
Thanks for poking around with the shader! I took some screenshots before and after the change and the results are visually completely identical, so I've committed the change but won't mark this issue as fixed until I have some more corroboration (Rob?)
What led you to try removing that particular part, by the way? To be honest I can't follow what that part of the shader is even meant to be doing, and I write games for a living. This Is Why We Comment Our Code, People.
from boxer.
I noticed that the black screen happens only if the CURVATURE
macro is defined (it's defined by default). This macro changes only one line in the shader, which calls the transform
function.
After that I started to comment out different pieces of code inside the transform
function. The problem was with the stretch
variable. The variable was initialized with a maxscale
function call, which led me to a fwtrans
call, and later to the dot product.
Sadly, I have no idea what the dot product is supposed to do exactly and why it causes the problem. I tried to look deeper, but without success, and decided to stop, since the problem was seemingly fixed.
from boxer.
I know topic is old but the bug still persists on games purchased on GOG.com. Is there any way to address this issue (without having to recompile Boxer/etc.)? I, too, have a Macbook Pro 2013 with Intel HD Graphics 4000. Retro shader results in black screen. Can anyone post a screenshot of how the retro shader looks? Of what I read is that it looks really good (better than scanlines in Boxer standalone)?
from boxer.
A quick fix would be to copy the fixed shader file into one of the GOG apps you have. The necessary file is here:
https://raw.githubusercontent.com/alunbestor/Boxer/master/Resources/Shaders/crt-geom-interlaced-curved.shader
(Github makes it awkward to just straight-up download files, so in Safari: right-click on the link above and choose "Download linked file", then rename the resulting file's extension from ".shader.txt" to just ".shader".)
Once you've downloaded it, right-click on a GOG game in Finder and choose "Show Package Contents". Browse to Contents/Resources/Shaders/
and replace the file in there with the new one.
Let me know if the shader works correctly for you!
from boxer.
that did the trick, thanks! I had the impression the shader needs to be compiled but that's not the case.
The monitor curving is a bit exaggerated on the Retro shader, though. Do you know which values to change to reduce this? I changed R which seems to do that but the graphics then seem to extend outside the visible screen area.
from boxer.
Smaller R
values should reduce the curvature, kinda surprised it makes it extend further outside the frame. You could try lowering the overscan
amounts as well to compensate; or increase d
, the distance-of-viewer-to-screen, which should flatten the perspective but might have further knock-on effects.
from boxer.
Related Issues (20)
- Can't compile the master 64 bit Boxer, help needed =( HOT 25
- Magic mouse buttin not working HOT 8
- 64 bit builds do not support joysticks HOT 13
- not running on 10.15 Catalina HOT 2
- Boxer Crashes under Parallels HOT 1
- save games not work since 64bit update ?! HOT 7
- Support compressed .boxer bundles or inner .harddisk containers.
- CD Audio is stuttering and making the game jittery in 64-bit build HOT 4
- Is Boxer a still active project? HOT 1
- Mac ARM (Apple Silicon)-native build HOT 5
- License file
- Active Fork? HOT 1
- App crashes when trying to print HOT 5
- Boxer Bundler creating a non-working standalone HOT 2
- 2 Gamepads
- New version of Boxer coming? HOT 4
- PC booter games saving HOT 5
- Render non-latin characters HOT 1
- DDHidLib/DDHidLib.h File Not Found HOT 2
- Migrate to DOSBox's overlay drives
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from boxer.