Quenty
|
  |
| Joined: 03 Sep 2009 |
| Total Posts: 9316 |
|
|
| 18 Jan 2012 10:30 PM |
The real solution is to create the shadow on the screen using GUI's. Using a polygon render:
http://www.roblox.com/gloo-Library-v0-6-item?id=67401171
And a object to screen function:
A object(vector3?) toscreen function:
local angle=1/math.tan(math.rad(30)) --ToScreen(screen size in pixels,3D point in world) function PointToScreen(camcf,screen,pos) local asp=screen.x/screen.y --aspect ratio local lwpos=camcf:pointToObjectSpace(pos) --put to camera spaice local screenpos=Vector2.new(lwpos.x,lwpos.y)/-lwpos.z --z divesion pl0x. screenpos=Vector2.new(screenpos.x*(angle/asp),screenpos.y*angle) --Perspective whatever angle FoV??? stuff. screenpos=(screenpos/2)*screen + screen/2 --convert to pixels. return Vector2.new(screenpos.x,screen.y-screenpos.y),-lwpos.z --invert y axis. end
It would be possible to render shadows using GUI's. There might still be lag, but you could make really technically correct shadow's using GUI's, and raycasting. If prerecordeded, movies could be made with the GUI's.
Who else thinks this will work?
|
|
|
| Report Abuse |
|
|
|
| 18 Jan 2012 10:53 PM |
| "If prerecordeded, movies could be made with the GUI's. " At 2 FPS. I like the rest of the idea. I think I'm going to make a simple test. |
|
|
| Report Abuse |
|
|
|
| 19 Jan 2012 08:23 AM |
Ye i thought of covering the screen with black frames and changing their transparency according to the light level at the spot.
This is how i would do it:
1.When you move your camera, if you moved just a little, itll move the pixel shadings some amount to some direction (not accurate but whatever)
2.Then itll start firing rays from random pixels, changing their transparency to the light level at that spot, and affecting the neighbor cell transparencies if they havent been raycasted yet. It does this eventually for each frame, but itll cast more rays at the center of the screen at the start (so its the first area which gets done)
Different approach:
Keep track of brick faces. Each step, render the faces on the frame grid on the screen (render the light levels, so only change transparencies of the frames)
Before that, you need to get all visible polygons. Then you sort them by depth. Then you render them from closest to farthest, with Z testing of course, and have a quadtree kind of thing, with all the bottom depth cells set, to quickly check the deepest pixel in the area of the polygon, to see if it is potentially visible (???).
Calculate the light levels of the faces/pixels after you have a grid of pixels and depths (= youve rendered the polygons somewhere, but only including the depth and the brick/material/watever) That way you only need to calculate light for the visible pixels, so you wont calculate lighting twice for a single pixel if you happen to have some overdraw.
Then get lag k? |
|
|
| Report Abuse |
|
|
Anaminus
|
  |
 |
| Joined: 29 Nov 2006 |
| Total Posts: 5945 |
|
|
| 19 Jan 2012 08:07 PM |
| The real solution is to get the devs to choose to finish dynamic lighting over increasing max player count. |
|
|
| Report Abuse |
|
|
| |
|
|
| 19 Jan 2012 09:04 PM |
@anaminus agreed, i've been dying for better dynamic lighting. i notice that any game that takes effect of independent light sources and shadows looks way better and adds a better feel to the game. (like minecraft :P)
~I've been to nil and back. |
|
|
| Report Abuse |
|
|
Oysi
|
  |
| Joined: 06 Jul 2009 |
| Total Posts: 9058 |
|
| |
|
LPGhatguy
|
  |
 |
| Joined: 27 Jun 2008 |
| Total Posts: 4725 |
|
|
| 20 Jan 2012 12:53 AM |
@Oysi Isn't the definition of dynamic lighting simply trying to imitate light in a computer?
And can't the processing get intense in a brobdingnagian scale? (Had to use that word) |
|
|
| Report Abuse |
|
|
|
| 20 Jan 2012 12:54 AM |
| I tweeted to Shedletsky that Dynamic Lighting seems more important to me than Player count. |
|
|
| Report Abuse |
|
|
|
| 20 Jan 2012 01:00 AM |
@NINJAKID09
Increasing player count requires to optimize the game. Therefore, if you don't use the higher player count, it means you'll benefit from the optimizations anyways.
Optimizing the RobloxApp.exe is more important than dynamic lighting, we'd need to do it to get dynamic lighting anyways. |
|
|
| Report Abuse |
|
|
Oysi
|
  |
| Joined: 06 Jul 2009 |
| Total Posts: 9058 |
|
| |
|
|
| 20 Jan 2012 01:03 AM |
| @Julien ROBLOX would actually have to improve their server speeds too, which would cost them more money than just adding a feature. |
|
|
| Report Abuse |
|
|
|
| 20 Jan 2012 01:05 AM |
@Oysi
So that means if I put this in my place, it'll have dynamic lighting: http://www.roblox.com/TimeOfDay-item?id=65381091 ? |
|
|
| Report Abuse |
|
|
|
| 20 Jan 2012 01:06 AM |
@NINJAKID09
Bah, if you don't need the higher player count, and if you don't use it, then you'll still get benefits from the higher speed. |
|
|
| Report Abuse |
|
|
|
| 20 Jan 2012 01:07 AM |
@Juilen If you didn't notice, ROBLOX forces you to use Mega servers if you want a higher player count anyway.
Meaning the high player count would be useless to places that aren't mega servers. |
|
|
| Report Abuse |
|
|
|
| 20 Jan 2012 01:09 AM |
@NINJAKID09
Meaning non-mega servers will benefit from the optimizations. That's exactly what I was saying.
If you don't make your player count higher, then you'll still benefit from the optimizations to the application. |
|
|
| Report Abuse |
|
|
|
| 20 Jan 2012 01:09 AM |
| Where does it say they're optimising it though? |
|
|
| Report Abuse |
|
|
LPGhatguy
|
  |
 |
| Joined: 27 Jun 2008 |
| Total Posts: 4725 |
|
|
| 20 Jan 2012 01:11 AM |
@Oysi I'm pretty sure it just means that it's not static.
It's lighting that changes with the environment. MC has that. |
|
|
| Report Abuse |
|
|
|
| 20 Jan 2012 01:11 AM |
They have to. Otherwise, how do you think they'd be able to support more players?
Of course, they're improving the servers speed, and that's only for mega places. But they're also optimizing the application, which will benefit everyone, even if it's not in a mega place. |
|
|
| Report Abuse |
|
|
myrkos
|
  |
| Joined: 06 Sep 2010 |
| Total Posts: 8072 |
|
|
| 20 Jan 2012 01:24 AM |
I think Minecraft has dynamic lighting by pretty much all definitions that tend to lurk around here.
Go in a cave, it's dark. Build a wall and stand on the side of it that's opposite to the side the sun currently is: you get shade, that is I think you do. |
|
|
| Report Abuse |
|
|
MrNicNac
|
  |
| Joined: 29 Aug 2008 |
| Total Posts: 26567 |
|
|
| 20 Jan 2012 08:30 AM |
| Minecraft uses static lighting. |
|
|
| Report Abuse |
|
|
Oysi
|
  |
| Joined: 06 Jul 2009 |
| Total Posts: 9058 |
|
| |
|
blockoo
|
  |
| Joined: 08 Nov 2007 |
| Total Posts: 17202 |
|
|
| 20 Jan 2012 08:57 AM |
@Oysi The non-character shadows are static. They have a shadow all around them, and they stay the same no matter the TimeOfDay. I think they're pretty much crap and just cause lag, so I keep them off.
~Would you like some butter with that latetoast? |
|
|
| Report Abuse |
|
|
|
| 20 Jan 2012 08:59 AM |
| Wonder if there's a tool that sets geographicLatitude (or whatever) and timeOfDay to set the sun at any point on the sky and get lighting from any angle. |
|
|
| Report Abuse |
|
|
Oysi
|
  |
| Joined: 06 Jul 2009 |
| Total Posts: 9058 |
|
| |
|