Comments (2)
One potential problem with this, is that asset files are pre-processed by the MonoGame pipeline tool. We can't exactly provide a copy of every asset for every platform/graphic renderer since this would essentially mean doubling our game size for a minor feature.
We should probably figure out if which assets can and cannot be used over multiple graphic renderers, audio is probably fine, shaders is probably not, unsure about sprites/textures. If for instance we only need to include multiple variations of shaders, then that is probably doable as it wouldn't increase size much, or any.
from hero6.
I was a able to hash out a functional prototype, I was actually really impressed with how great the result turned out, I was expecting having to make some hacks for this, but it's all kosher.
Textures works on both DirectX and OpenGL, not surprising since I believe they're raw bitmaps. Sound effects work, however music does not to my surprise. The MonoGame platforms pre-processes music files differently, "WindowsDX" makes files in the .wma format, and "DesktopGL" in the .ogg format, and then most likely the MonoGame software has a pre-processesing directive to include interpreter only for the relevant format.
The easiest way to resolve this would be to include a copy of the soundtrack for each platform but that takes too much space on the user's expense, the soundtrack is most likely one of the most space consuming things we'll have in this game.
We could also open an issue at the MonoGame repo and ask to have playback for multiple audio formats for single platforms implemented. However, they might have had a reason to not include this feature in the first place.
Alternatively we could also make our own audo handler, which is probably out of scope for this project.
https://github.com/persn/Hero6/tree/develop/feature/renderer
Either way I'm done with this for now.
from hero6.
Related Issues (20)
- [UI] Stackpanel at wrong location
- [UI] Faulty OnMouseUp for StackPanel
- [General] Hero6 not recognized by Windows Defender HOT 1
- [UI] Everything behind a dialog should be greyed out
- [Docs] Update minimum required .NET version
- [Docs] Update minimum OS version
- [UI - SierraVGA] Extension bar buttons, lighter button on mouse over HOT 2
- [UI] Render mouse cursor on last known location if it moves outside window
- [UI - SierraVGA] Change mouse cursor to arrow when showing dialog
- [General] Add Linux distributable HOT 8
- [General] Add OS X distributable HOT 2
- [General] Build Configuration Reversion HOT 4
- [Engine - Pathfinder] Benchmarks
- [Engine - Pathfinder] Encapsulate node from BlueRaja
- [UI - Dialogue] Right-click to Rewind Text/Dialogue Windows HOT 1
- [UI - SierraVGA] Mouse cursor for sneaking
- [Engine - Pathfinder] 1st execution of pathfinder is excessively slower the rest HOT 1
- [Admin] Deploy to GitHub from TeamCity HOT 2
- [Admin] Look into tools code coverage HOT 2
- No unit test coverage is reported for the project Hero6.DesktopGL HOT 1
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 hero6.