generic image
Processing...
  • Games
  • Catalog
  • Develop
  • Robux
  • Search in Players
  • Search in Games
  • Search in Catalog
  • Search in Groups
  • Search in Library
  • Log In
  • Sign Up
  • Games
  • Catalog
  • Develop
  • Robux
   
ROBLOX Forum » Roblox » Suggestions & Ideas
Home Search
 

Re: Customizable Skybox

Previous Thread :: Next Thread 
powertool is not online. powertool
Joined: 01 Feb 2008
Total Posts: 3771
22 Dec 2013 06:43 PM
Who hates the roblox sky?

No, seriously. Have you taken a good look at what Roblox calls a sky?

It's ugly.

With that, let me introduce my Customizable Skybox idea.

I read somewhere that the current roblox skybox uses only about 6-10% of available processing power, whereas other games dedicate a lot more to it, about 50%. This means that the sky is a blank slate, except we can't use it. We can't create anything to do with sky.

And my suggestion is to make the sky useable.

It works like this:

The sky portions of lighting get removed entirely and placed into a separate service, "Sky".

Time, geographical position, and default ambient (interior ambient) are still controlled in lighting.

The sky service can change atmospheric lighting ambient for day and night outdoors, and the two colours get interpolated between during dawn and dusk, based off of another pair of colour/brightness values.

In this sky service, we have by default three objects. A sun object, a moon object, and a stars object.

These can be deleted, as they are children of the sky, and if we don't want them, we should be able to remove them.

The sun object would automatically track a path through the sky, based on game time. We can customize it's size and colour(s), and it will interpolate from three sets of said colours. (Dawn, Day, and Dusk.) We can also make the sun invisible, while still having it cast light and shadow.

The moon is similar, but has a Phase setting, with a number from 0 to 27 (new moon to almost completely dark waning crescent), with each one being one of the phases, calculated for whatever day it is. It would cast a lot less light than the sun, and the light would be controlled by the phase. Obviously new moon casts less light than full moon does.

The stars are procedurally generated from a random seed once per server start, and are the same for each player (as there is only one seed for the stars.) They cast very little light and have a twinkle effect around the core. Their colour is also adjustable, and it affects night colour, tinting it closer to the star adjustment colour.

The default arrangement and adjustment of these items will match the old skybox, somewhat like this.

Game
-Workspace
--Whatever is built in your game
-Players
-Lighting
=== >>This is the old sky object, it would be replaced...
--Sky
=== >>...by this. A customizable sky.
-Sky
--Sun
--Moon
--Stars
===
-StarterGui
-StarterGear
-SoundService
-Debris

New objects for the sky service are also going to be added, and will be implemented as GLSL shaders for cross-platform compatibility.

They would be the following objects for starters, perhaps with more added later.

Skybox - This is a legacy object to allow old games with a skybox to easily transfer to the new sky system.

Fog - This would work similar to the old render fog, except it would occlude the sky as well. This is a global shader, and therefore not affected by wind.
Like so:
Fog
-Fog visual range start(Studs, intvalue)
-Fog visual range end(Studs, intvalue)
-Fog Colour(Color3 value)


Mist - Similar to above, except mist acts within a rectangular region. It joins with adjacent regions, and is built/selected on a 4x4 grid. While the camera is outside it, it occludes from the edge point in, and while the camera is inside it acts like fog until the edge of the area is reached, after which it partially occludes based on a percentage of the distance to the edge of the area. Can be affected by wind, unlike fog. Renders as uniform particles with very little trail.
Like so:
Mist
-Mist Region Position(Vector3 value)
-Mist Region Size(Vector3 value)
-Mist Colour(Color3 value)
-Mist visual range start(Studs, intvalue)
-Mist visual range end(Studs, intvalue)


Dust - Similar to mist, can be affected by wind, behaves the same way as mist does, but renders like dust with differently sized particles that move fast and leave a bit of a trail.
Like so:
Dust
-Dust Region Position(Vector3 value)
-Dust Region Size(Vector3 value)
-Dust Particle Size(Tenth stud, intvalue)
-Dust particle size variation(Tenth stud, intvalue)
-Dust Colour(Color3 value)
-Dust visual range start(Studs, intvalue)
-Dust visual range end(Studs, intvalue)


Cloud - Similar to mist, is similarly affected by wind, and renders as a "far-away" mode of mist. Mist that is far away renders the same as clouds. Is region-based, and can have it's cloud type toggled with two dropdowns. One for height range, one for actual base type. Based on these two sliders, the cloud shaders generate random clouds within 50 studs either way of the selected height. It can also be recoloured and resized. Cloud size is an average size for the cloud in the horizontal plane, and has a random factor to it. One last option is coverage, or how much of the sky is actually covered by the cloud shader.
Like so:
Cloud
-Cloud Height Range(Dropdown, alto, cirro, nimbo)
-Cloud Type Range(Dropdown, stratus, cirrus, cumulus)
-Cloud Height(Studs, intvalue)
-Cloud Height Variation(Studs, intvalue)
-Cloud Colour(Color3 value)
-Cloud Coverage(okta(0-8), intvalue)
-Cloud Size(studs, intvalue)


Wind - Can be set in layers and affects particles and unanchored parts based on exposed area's size and exposure angle. Anchored parts are not calculated, and nocollide parts are not calculated (unless they are part of a humanoid). Can have altitude, height range, and wind strength set. Is a global effect.
Like so:
Wind
-Wind height bottom(Studs, intvalue)
-Wind height top(Studs, intvalue)
-Wind speed(Studs per second(same as walkspeed), intvalue)
-Wind direction(Degrees, intvalue)


Rain - Obviously. Makes a global particle fall from the sky, is affected by wind. Is a global effect, but drops from clouds. It makes clouds grey while it falls from them, and is affected by wind. Can be set to fall all over with no cloud, and is stopped by terrain and blocks.
Like so:
Rain
-Rain amount(Percentage, intvalue)
-Rain colour(Vector3 value)(I want bright neon green radioactive rain!)
-Rain droplet size(Tenth stud, intvalue)
-Rain falls from clouds(True/false, boolvalue)
-Rain is falling(True/false, boolvalue)


Snow - Think of rain, except it uses a slower and bigger particle.
Like so:
Snow
-Snow amount(Percentage, intvalue)
-Snow colour(Vector3 value)(I want bright neon green radioactive snow!)
-Snow flakelet size(Tenth stud, intvalue)
-Snow falls from clouds(True/false, boolvalue)
-Snow is falling(True/false, boolvalue)


This is all I have for now, but I'm sure the admins will add many more effects that I haven't thought of. And by implementing them as shader objects, they can be implemented relatively efficiently and easily. Please favourite and support, expand and improve, and if you don't like it, tell me how it can be made better!

An example of these object in a game with a storm could be like this.

Game
-Workspace
--Blah blah blah, level.
-Players
--Whoever is being amazed at the stack of weather effects.
-Lighting
-Sky
--Cloud
--Wind
--Rain
--Mist
--Fog
--Sun
--Moon
--Stars
-StarterGui
-StarterGear
-SoundService
-Debris
================

TL;DR Please don't TL;DR. It's a good sky suggestion, just skim it, see if you like it, and write support if you like it.
Report Abuse
frozengaia is not online. frozengaia
Joined: 09 Oct 2009
Total Posts: 19760
22 Dec 2013 06:46 PM
*Looks at title*
Oh, right, you do know you already can do that... .-....

*Notices how long the OP is*
... Next time, be more careful with your title.

...Well, I fully support. I don't see any problems.

Will we be able to have multiple suns/moons?
Report Abuse
powertool is not online. powertool
Joined: 01 Feb 2008
Total Posts: 3771
22 Dec 2013 06:53 PM
Yep. Considering this is (partially) in response to me planning to create a TES roleplay when universes come out, and Nirn has two moons.
Report Abuse
DanBossStar321 is not online. DanBossStar321
Joined: 26 Dec 2012
Total Posts: 27652
24 Dec 2013 11:05 PM
tl;dr

Indian of S&I
Report Abuse
iwin3333 is not online. iwin3333
Joined: 17 Oct 2009
Total Posts: 1345
24 Dec 2013 11:10 PM
That's, uh...
Incredibly detailed...
Support!
Report Abuse
DurstAuric is not online. DurstAuric
Joined: 12 May 2009
Total Posts: 8066
07 Nov 2014 12:53 PM
kbump, I agree though.


#DurstIlluminati (R$64,967/R$250,000)
Report Abuse
ThatChristianGuy is not online. ThatChristianGuy
Joined: 14 Jun 2014
Total Posts: 1283
07 Nov 2014 01:18 PM
Read the whole thing. No support whatsoever.


--ThatChristianGuy
Report Abuse
fireking100489 is not online. fireking100489
Joined: 10 Mar 2011
Total Posts: 5586
07 Nov 2014 01:45 PM
I support.
Report Abuse
police157 is not online. police157
Joined: 21 Feb 2009
Total Posts: 790
07 Nov 2014 01:59 PM
I'm just saying this, but many people with say it's scriptable.

I personally love this though, and I think that we shouldn't have to script everything. If Roblox can do us a favor and save some time, why not?

Support :3
Report Abuse
DurstAuric is not online. DurstAuric
Joined: 12 May 2009
Total Posts: 8066
07 Nov 2014 02:12 PM
It would bring a better atmosphere to games.


#DurstIlluminati (R$65,124/R$250,000)
Report Abuse
ArcticSorcery is not online. ArcticSorcery
Joined: 19 Aug 2009
Total Posts: 4761
07 Nov 2014 02:23 PM
...waste of computation space

as you said, 50%
Report Abuse
Klink45 is not online. Klink45
Joined: 06 Jun 2011
Total Posts: 26054
07 Nov 2014 02:34 PM
100% support, I've wanted to edit the sun and moon forever.

u sicko!
Report Abuse
DerProgrammierer is not online. DerProgrammierer
Joined: 16 Aug 2007
Total Posts: 12992
07 Nov 2014 02:34 PM
This leads me to say that you don't know what a skybox is. Pretty much everything you said is scriptable.
Report Abuse
BogyMac is not online. BogyMac
Joined: 04 Nov 2011
Total Posts: 823
03 Mar 2015 07:28 PM
Awesome ideas.

Support 100%!
Report Abuse
OhLookItsHim is not online. OhLookItsHim
Joined: 09 Jan 2014
Total Posts: 142
03 Mar 2015 07:35 PM
Long, I never read it all but yeah. Support
Report Abuse
powertool is not online. powertool
Joined: 01 Feb 2008
Total Posts: 3771
04 Mar 2015 01:22 PM
"This leads me to say that you don't know what a skybox is. Pretty much everything you said is scriptable."

With difficulty and lag. Raycasting is also scriptable, with difficulty and lag.

As for the things that AREN'T scriptable, that's all on the rendering side. Volumetric fog, making fog affect the skybox as well as parts, fog, new particles (that don't lag like crap), et cetera.

Plus the organization of it all.
Report Abuse
Valoric is not online. Valoric
Joined: 21 Nov 2013
Total Posts: 3621
04 Mar 2015 01:27 PM
support.
Report Abuse
DerProgrammierer is not online. DerProgrammierer
Joined: 16 Aug 2007
Total Posts: 12992
04 Mar 2015 01:47 PM
Everything has been done before, with minimal lag, just because you don't know how to implement in an efficient way, doesn't mean others can't.

Raycasting isn't something that's efficient in any case. You have to continually increment along a line by 1 to see if you hit a point in space.


Report Abuse
powertool is not online. powertool
Joined: 01 Feb 2008
Total Posts: 3771
04 Mar 2015 01:52 PM
You try implementing a volumetric fog system that doesn't rely on hackish methods.

When raycasting was implemented C-side, its speed increased over the best lua implementation of it, by three orders of magnitude.

The point isn't that none of this is scriptable, the point is that it's not efficiently scriptable (not to mention that glsl shaders can't be modified from ingame.)
Report Abuse
DerProgrammierer is not online. DerProgrammierer
Joined: 16 Aug 2007
Total Posts: 12992
04 Mar 2015 02:02 PM
"When raycasting was implemented C-side, its speed increased over the best lua implementation of it, by three orders of magnitude."

It wasn't because it was introduced on C++-side, languages don't have speed, don't imply it. Next, the performance was faster, because On the C++ side of the game. Lua doesn't have direct access to the graphics engine, making ray casting more difficult before it was implemented into Lua as the current raycasting functions.

"You try implementing a volumetric fog system that doesn't rely on hackish methods."

95% of programming is relying on hackish methods. lol
Report Abuse
DurstAuric is not online. DurstAuric
Joined: 12 May 2009
Total Posts: 8066
04 Mar 2015 02:05 PM
Oh wow, how did you even find this..? I still agree on this however.


#໓นrŞt (RAP:612,106 - R$8,147 - Tx5,635) [British. Tea slurper. -slurps tea-]
Report Abuse
powertool is not online. powertool
Joined: 01 Feb 2008
Total Posts: 3771
04 Mar 2015 02:08 PM
Luaside and C-side are pretty clear in what I mean. Because of how it was implemented it was seriously a thousand times faster and more efficient

But seriously, you try creating not-part-based volumetric fog through lua. That's entering into GLSL territory, which lua has no influence over.

Which is the point of this suggestion, give us access to more sky effects relying on shaders to work properly and efficiently.
Report Abuse
powertool is not online. powertool
Joined: 01 Feb 2008
Total Posts: 3771
04 Mar 2015 09:23 PM
We're at 11 supports, and this totally isn't a disguised bump.
Report Abuse
Cakerunner is not online. Cakerunner
Joined: 06 Dec 2013
Total Posts: 15794
05 Mar 2015 01:09 PM
Support, we don't need blocky rubbish decal skybox's.
Report Abuse
powertool is not online. powertool
Joined: 01 Feb 2008
Total Posts: 3771
05 Mar 2015 05:23 PM
12 supports now.
Report Abuse
Previous Thread :: Next Thread 
Page 1 of 1
 
 
ROBLOX Forum » Roblox » Suggestions & Ideas
   
 
   
  • About Us
  • Jobs
  • Blog
  • Parents
  • Help
  • Terms
  • Privacy

©2017 Roblox Corporation. Roblox, the Roblox logo, Robux, Bloxy, and Powering Imagination are among our registered and unregistered trademarks in the U.S. and other countries.



Progress
Starting Roblox...
Connecting to Players...
R R

Roblox is now loading. Get ready to play!

R R

You're moments away from getting into the game!

Click here for help

Check Remember my choice and click Launch Application in the dialog box above to join games faster in the future!

Gameplay sponsored by:
Loading 0% - Starting game...
Get more with Builders Club! Join Builders Club
Choose Your Avatar
I have an account
generic image