Comments (4)
I've spent some time investigating and I'm pretty sure it's something in the internals of DirectDraw which is causing the exception, which I'm not surprised by given how the API has been deprecated for quite some time now. The solution would be replacing the DirectDraw code with something else on Windows, but I understand that's not likely at this point.
I'll investigate using WSL or Docker, thanks.
from vizdoom.
Thank you for your investigation @MJohnson20. It works perfectly fine on my Windows 10 machine, so I was not able to investigate on my own so far, but I'm not surprised that some issue is present on the next iteration of the OS. The best solution would be to drop the DirectDraw backend and just replace it with SDL2 backend that is used on Linux and Mac. Unfortunately, it is also intertwined with some posix-specific code, so it isn't a drop-in replacement for Windows and would require some more work. I have plans (for a few years now...) to do it but so far no luck with finding enough time. Maybe someday it will happen, but it is unlikely in the near future.
from vizdoom.
Hi @MJohnson20, thank you very much for reporting the problem! We probably won't investigate it in the near future as the Windows version is not a priority for us. If you have an idea how to fix it, we will gladly accept a PR.
If you plan on running some serious experiments on your machine, I highly recommend using Windows Subsystem for Linux and installing ViZDoom on it, or using Linux-based docker, as there is another issue with slowdowns on Windows 11 (#504).
from vizdoom.
As a follow-up, I've gone ahead and ported the Win32 version to using SDL. It's a bit of a mess at the moment but it's functional. I'll get it cleaned up and submit a PR if you're interested.
It should be noted that it's probably got a few issues as there's quite a lot of code that's been ripped out, so it'll take some time to get into a mergable state but we could get that ball rolling.
from vizdoom.
Related Issues (20)
- Update to the newest Gymnasium API
- Create a git pre-commit hook with black, flake8 and isort for gym_wrapper HOT 3
- Create a GitHub workflow with black, flake8 and isort checks HOT 1
- Add docstrings to pybind11 module
- Fix SetuptoolsDeprecationWarning in setup.py
- python setup.py build failed in ARM64 machine HOT 9
- Cannot pickle vizdoom.vizdoom.GameState in python HOT 1
- Curious why can't I install vizdoom with conda deps?
- from vizdoom import gymnasium_wrapper doesn't work HOT 2
- Reset error in deadly corridor: screen buffer HOT 7
- ViZDoom's Development Roadmap
- Checklist for Maturity
- Cannot install via pip HOT 6
- Can I use VizDoom in other FPS games? HOT 3
- First Time User Encountering Pip Install Error M1 HOT 6
- Bug for VizdoomEnv HOT 3
- ATTACK command not working properly, The SELECTED_WEAPON_AMMO variable does not change when pressed HOT 9
- ViZDoom for behavioral modelling; stabilizing time-diff between states HOT 4
- Avoiding a certain range for spawning the Cacodemon fails HOT 3
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 vizdoom.