Godot version:3.0
Suggestion description:
A la Unity3D / Unreal Engine and any worthy engine.
A splash screen, intro screen or loading screen.
You know for public exposure/awareness and self-advertising !
A simple skippable black screen with Godot engine logo by default for example.
Where to offer it ?
Well.. there's a splash screen already.
Oh well, ok ^^ I haven't tested 3.0 and people on #general haven't argued against it... and suggested joke screens...
Splash screen is on 2.x too
I knew someone were coming to say that, but shh... we are all fake devs.
I think you should have waited 133 issues more, so you would get issue #9000
, as this looks like a nice candidate for it...
The thing that Godot does not provide is a minimal splash screen duration, so if your game is fast to load, you'll only see it shortly (contrarily to that of proprietary engines which want to be sure you are well aware that the game uses their engine).
You can also already use a scene as splash screen, which opens thousands on possibilities. Community members could make cool looking splash screen scenes and distribute them on the asset library.
See this tutorial which was posted just yesterday: https://www.youtube.com/watch?v=9sHKaQBcgO8
Maybe the splash screen configuration options could be made more obvious though, so feel free to make suggestions. There could also be a setting to enforce a minimum splash screen duration, if your game is small and the loading is to fast for that screen to be relevant.
A way to set a scene as a splash screen, so devs can add all the animated logos and other things players quickly skip to reach the main menu (I know it can be done already in many ways but setting it on the project could be nice).
So, on splash scene close, load main scene, or something like that.
current splash screen feature is for showing a splash image as fast as possible, even before registering all kinds of node and server(visual, audio, physics, sound) to prevent to show just black screen at starting game.
if scene is set as splash, need to wait more until all things are loaded.
It's already possible to set a scene as splash screen, check the tutorial linked above. You just "fake" the splash screen: disable the static image splash screen during loading of the main scene, and make your main scene that splash scene that will load the game's resource in the background. Since the splash scene itself is not complex, there is almost no loading time for it, so it works well.
so, does it make sense to keep this open?
If there is no way of setting duration for custom splash screens this must be kept open IMO. May be title can be changed to reflect this feature I think.
I dont really agree with that, its adding unnecessary complexity. If you want a real splashscreen, you already have indications on how to make one using a scene. Godot's in-built splashscreen is something simple, and should remain like that (IMHO)
I was refering to:
There could also be a setting to enforce a minimum splash screen duration, if your game is small and the loading is to fast for that screen to be relevant.
Rest is about documentation I think. And I agree that in-built splash behaviour must stay as the way it is now.
First of all thank you for your report and sorry for the delay.
We released Godot 3.0 in January 2018 after 18 months of work, fixing many old issues either directly, or by obsoleting/replacing the features they were referring to.
We still have hundreds of issues whose relevance/reproducibility needs to be checked against the current stable version, and that's where you can help us.
Could you check if the issue that you described initially is still relevant/reproducible in Godot 3.0 or any newer version, and comment about its current status here?
For bug reports, please also make sure that the issue contains detailed steps to reproduce the bug and, if possible, a zipped project that can be used to reproduce it right away. This greatly speeds up debugging and bugfixing tasks for our contributors.
Our Bugsquad will review this issue more in-depth in 15 days, and potentially close it if its relevance could not be confirmed.
Thanks in advance.
Note: This message is being copy-pasted to many "stale" issues (90+ days without activity). It might happen that it is not meaningful for this specific issue or appears oblivious of the issue's context, if so please comment to notify the Bugsquad about it.
There is currently those options: replacing default Godot Engine logo by another picture, and a full screen option.
Its duration seems to be tied to how fast (or slow) first scene of game is loaded.
It can be completely inconsistant between two player machines.
There could be at least a minimal display time as suggested above. That should be enough and fit most projects.
We can always have fade-out transition and anything else more advanced as community pluggins. (and then replacing default/core splashscreen configured in screenshot above with black/empty/1-pixel picture in that case)
Any plans on allowing the splash screen get a duration setting? I'd love to be able to just set a custom splash image and set the length with an optional click to skip (after godot finishes loading). Currently the workaround is to override the image and create a splash scene that is the start screen as well (using the same image) to extend the length of the current splash.
@exts Wouldn't it make sense to keep using a splash scene so that you can add various effects/transitions? This cannot be done using a single splash image.
@Calinou yeah I guess you're right
@Calinou: yes but since the boot splash is there, it should be improved to make use of it. Right now if a scene loads fast, you can barely see it, so a minimal duration makes sense.
As it is right now, I would either entirely remove the boot splash or improve it. As it is, it's useless and currently even bothering, since you can't really disable it and you need to load a black image which is a hack.
@char0xff As it is right now, I would either entirely remove the boot splash or improve it. As it is, it's useless and currently even bothering, since you can't really disable it and you need to load a black image which is a hack.
I agree, I usually use an exclusive scene for splash screen and I leave the native splash as a black or transparent texture.
Also, in Godot 3.1-alpha there is a new option for Bg Color. So it would be better if we could remove the image.
In the following project, I'm using a transparent texture:
as akien and others have stated, you can just add your own scene as a splash screen.
you can then set a anim func track to close it after xxx seconds to act like a "minimum display" time. this is the beauty of scene instancing in godot. you can also offer the ability to close the splash screen on click (path of exile, and other large games do this). which increases the user experience and the ethical thing to do (((IMO))). ethical in the sense, you are saving the player time.
why do you want players to wait a minimum amount of time. that would rage 90% of players imo. sorry, i don't understand. when players open a game they want to get going to the action fast, not sit and wait a "minimum amount of time"
@girng You're right, it probably doesn't make sense.
If instance your camera at runtime you need to have the splash draw few more frames for the transition.
Ooh yes like draw the splash screen until you hide it in your code with a function call.
Yea could be a nice option draw until disable from script.
Another useful bit of information would be to know how long the splash screen was alive for.
If we knew that, we could display our own splash screen for the desired remaining time.
@naturally-intelligent Sounds like a good idea, please create a new issue about it :slightly_smiling_face:
Feature and improvement proposals for the Godot Engine are now being discussed and reviewed in a dedicated Godot Improvement Proposals (GIP) (godotengine/godot-proposals) issue tracker. The GIP tracker has a detailed issue template designed so that proposals include all the relevant information to start a productive discussion and help the community assess the validity of the proposal for the engine.
The main (godotengine/godot) tracker is now solely dedicated to bug reports and Pull Requests, enabling contributors to have a better focus on bug fixing work. Therefore, we are now closing all older feature proposals on the main issue tracker.
If you are interested in this feature proposal, please open a new proposal on the GIP tracker following the given issue template (after checking that it doesn't exist already). Be sure to reference this closed issue if it includes any relevant discussion (which you are also encouraged to summarize in the new proposal). Thanks in advance!
Most helpful comment
Maybe the splash screen configuration options could be made more obvious though, so feel free to make suggestions. There could also be a setting to enforce a minimum splash screen duration, if your game is small and the loading is to fast for that screen to be relevant.