Comments (5)
Sorry, I may have strayed off topic by adding the notion of addon 😅
But that's because for me a template isn't really interesting, and will be unique to each developer. If someone uses a template, he'll modify the files, reorganize them ... and it's harder to update or fix the template retrieved from git. That's why I think making an addon is cleaner, because you'll really have something separate.
In my opinion, the two repositories should be merged, and the merged repository should look like what the goat template is intended to do, migrated for use as an addon (miskatonicstudio/goat#303).
There's always the demo, but we could give developers something modular (shaders + scenes + resources ...), which would allow them to recreate the demo in their own project, with their own assets, whether they wanted to do psx or n64 style.
This avoids duplication of code, for the demo and shaders (pp_band-dither.gdshader
for example), and provides a single location for issues.
And using it as an addon makes it easier to add (/update) to projects, avoid copy-paste individual files, and avoid including demo assets.
My opinion is very personal, because I think you don't want to merge the two shader repositories ? If such is the case, then yes, I think that making a third repository for the demo/template is a good idea 👍
from godot-psx-style-demo.
Hi @MenacingMecha, why not provide shaders as addon (under an addons/psx-n64-shaders
directory), you can provide it on godot asset library and exclude models or demo scenes from export ?
from godot-psx-style-demo.
Hi @MenacingMecha, why not provide shaders as addon (under an
addons/psx-n64-shaders
directory), you can provide it on godot asset library and exclude models or demo scenes from export ?
I did consider this at one point, but found the workflow a little too messy after looking into it. Plus, if they were to be on the asset library, I'd also want the demo available as it's own separate template entry.
Splitting the shaders into a separate repo and organising them in a way where they can be distributed on the asset library is a good shout, though. Worst case, there could always be a separate repo driven by CI magic solely for packaging for asset library.
from godot-psx-style-demo.
Example of separate demos causing duplicated labour:
MenacingMecha/godot-n64-shader-demo@f9ee31d
a44c55c
from godot-psx-style-demo.
Sorry, I may have strayed off topic by adding the notion of addon 😅
No, not at all - it's something I didn't think about, and would be a good change for how (I think) most users interact with this.
In my opinion, the two repositories should be merged, and the merged repository should look like what the goat template is intended to do, migrated for use as an addon (miskatonicstudio/goat#303).
Reviewing the shader code more closely, they are very very similar, and definitely would benefit from being merged into one location with further shader includes.
As addons can't be used without duplicating the contents, and the goal here is to reduce duplication, I think I will go ahead with having a separate repo that packages the shaders for the asset store.
In summary
- Merge the demo repos, and have a menu setting to swap between PSX and N64
- Merge the PSX and N64 shaders in a separate repo, added to the demo via submodule
- Add a third repo that packages the shader repo for asset store download, as this has different requirements that are incompatible with submodule usage
from godot-psx-style-demo.
Related Issues (7)
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 godot-psx-style-demo.