Comments (7)
Hey got a request for the ECS side of things. Would it be possible to get nested prefab support?
Example: A prefab within a prefab.
from lovr.
Can you give me an example of what you mean by this?
from lovr.
Hey @karai17 sure.
So I am making the assumption you know what a Unity Prefab is. That is what I am basing this on.
Lets say I have 3 prefabs and a generic script -
A red bird, yellow bird and a crocodile. Each are their own prefab.
The Crocodile is the top level prefab.
While the yellow bird and red bird are nested bellow the crocodile prefab.
Here is what the hierarchy looks like.
Crocodile (Prefab)
| - Red Bird (Prefab) (1 layer deep)
|---------- Yellow Bird (Prefab) (2 layers deep)
| - Generic Script (1 layer deep)
In unity this is not possible At the moment and it is really limiting. If LOVR supported this it would be really beneficial to making the engine a bit more flexible.
from lovr.
From @shakesoda on Slack:
the ecs has nothing to do with prefabs
prefabs would be a tree in the scene hierarchy, that flattens out when you get around to processing it with systems
(our engine works this way)
from lovr.
I have nothing to do with this framework, but this at least seems a bit out of what this framework is trying to do. Like love2d, this is a tiny framework that you build off of. Nothing more, nothing less. This isn't an engine.
But even if I did like this idea, I have a few issues:
-
IMGUI? It seems like a weird choice since it's something primarily used for debugging and really rough interfaces, and it's 2D only. Having a 2D only framework is... manageable, but less than ideal. I really don't see the benefits here.
-
I see no advantage for a Blueprint-esque system to be integrated. Lua is fairly verbose, but I only feel that a node editor would make it more so. I feel like something like integrated Moonscript support would be neat and wouldn't boggle down development so much since Lua and Moonscript are two sides of the same coin.
-
Actually, the idea of a debug mode sounds pretty neat. Only problem is that this would require a prefab system, which I'm not entirely convinced is a good idea. But I still am fond of some thing like a
lovr.debug
namespace existing.
Oh, side note, hotreloading can be solved by just holding a copy of the unchanged data, then loading in new data whenever you need to reload. If you want to save any changes (like the scene), you need to do this explicitly.
Finally, I do think that LOVR is way too early in it's life cycle to consider transforming it into a game engine. It's come a very, very long way since even 6 months ago, but it still lacks some features vital for making proper, larger games. This is cool, but unnecessary, at least at this point of time.
from lovr.
-
IMGUI is great for debugging. While it is a 2D UI system, there is nothing stopping you from rendering it to a canvas and rendering that in 3D space. Are there other GUI libraries that are better suited for 3D?
-
Nodes are super handy. You may not personally like them, but they are really good at doing a lot of different things. Designing AI systems, designing shaders, designing other types of systems, etc etc. You may not want to build a whole game with only nodes, but they do serve a very useful purpose.
I don't think timing is particularily important here. Having a quick and dirty framework you can use to get something on screen right away is definitely cool, but having built-in engine tools makes the middle and long term development cycle of your game go much smoother. It might be more immediately benefitial to the framework itself to get a few more checkboxes ticked, but I think if LOVR wants to be more than just a fun little toy, some of these bigger features shoudl at least be thought about now so they can be acted upon sooner rather than later.
from lovr.
I'm going to close this since there hasn't been any activity for a while, and for now I'd like to keep things less opinionated. Lately I've been having lots of related ideas about ways to better integrate developer niceties like hot reloading and VR debug overlays, but I think it's best to demonstrate success in external libraries and then integrate them into the core afterwards.
from lovr.
Related Issues (20)
- Out of GPU memory when rapidly creating passes HOT 1
- LOVR will not launch on Quest 2 HOT 5
- NAN if dt is high in headset_simulator HOT 1
- MacOs vulkansdk out of date HOT 2
- Support gltf textures and animation HOT 10
- how to save a screenshot from code? HOT 10
- readback does not works as intended HOT 7
- Pass:polygon HOT 1
- There is an error in the last update HOT 2
- Can you export to iOS platform? HOT 1
- Run multi-threaded skeletal animation HOT 1
- ا Why not program a game in c like raylib without using lua HOT 2
- How to remove membrane from grass HOT 2
- back in map replicates sword and shield HOT 3
- The screen is black when running the apk file HOT 1
- How to make hand devices function properly on official examples HOT 3
- how to stream a picture an sound? (quest link / steam vr replacement) HOT 1
- networking frezzes HOT 5
- Instancing throws error and corrupts shader cache on macOS HOT 7
- no filesystem acces??? HOT 4
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 lovr.