josmas / openwonderland

Automatically exported from code.google.com/p/openwonderland
GNU General Public License v2.0
3 stars 5 forks source link

Dynamically change lights via Default Environment cell #217

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
A user should be able to change the lighting in Wonderland through the object 
editor. Values to change include:

Light's position,
Light's direction,
Light's ambient color,
Light's diffuse color,
Light's specular color,
Whether the light casts shadows or not.

See attached screenshot for prototype.

Original issue reported on code.google.com by pympno...@gmail.com on 31 Oct 2011 at 6:46

Attachments:

GoogleCodeExporter commented 9 years ago
Attached diff implements initial prototype of changing lights via the 
environment cell. The follow features are currently supported:

-Changing ambient color
-Changing diffuse color
-Changing specular color
-Changing light position
-Changing light direction
-Showing visual representation (an arrow) of light in-world (local client only)
-UI affordance for shadow casting (not currently complete)

Known Issues:
- The visual affordance for the light does not accurately reflect light's 
direction. Quaternions are hard.
- The cast shadows checkbox is enabled, but doesn't currently do anything.
- The functionality is client local. i.e. other users won't see the changes 
you're making.....yet.
- To apply patch, the sharedstate project needs to be built first before the 
defaultenvironment project.

Original comment by pympno...@gmail.com on 2 Nov 2011 at 9:29

Attachments:

GoogleCodeExporter commented 9 years ago
Added SharedStateComponentMO reference to environment's CellMO.

Original comment by pympno...@gmail.com on 3 Nov 2011 at 5:10

Attachments:

GoogleCodeExporter commented 9 years ago
Adding to this issue is to dynamically change the skybox.  Attached diff does 
all of the above and allows dynamic changing of the skybox, synchronized across 
clients.

Original comment by pympno...@gmail.com on 15 Dec 2011 at 8:17

Attachments:

GoogleCodeExporter commented 9 years ago

Original comment by pympno...@gmail.com on 16 Dec 2011 at 4:20

GoogleCodeExporter commented 9 years ago
Attached is a new diff fixing several skybox bugs related to UI as well as 
rendering and synchronizing.

Original comment by pympno...@gmail.com on 19 Dec 2011 at 8:58

Attachments:

GoogleCodeExporter commented 9 years ago
Attached is an updated UI for changing the skybox. UI now tracks multiple 
"saved" skyboxes, and currently active skybox.

Original comment by pympno...@gmail.com on 19 Jan 2012 at 10:02

Attachments:

GoogleCodeExporter commented 9 years ago
Attached diff synchronizes lighting changes across clients.

Original comment by pympno...@gmail.com on 21 Feb 2012 at 9:40

Attachments:

GoogleCodeExporter commented 9 years ago
Attached diff fixes issues where lighting goes black for users logging in after 
lights have been reconfigured.

Original comment by pympno...@gmail.com on 1 Mar 2012 at 10:28

Attachments:

GoogleCodeExporter commented 9 years ago
For April 2012 release, Ryan will update the code to fix the NPE below. Jon 
will investigate build issues.

WARNING: SimpleClientListener.receivedMessage callback throws
java.lang.NullPointerException
at 
org.jdesktop.wonderland.modules.defaultenvironment.client.DefaultEnvironmentCell
$SharedListener.propertyChanged(DefaultEnvironmentCell.java:359)
at 
org.jdesktop.wonderland.modules.sharedstate.client.SharedMapImpl$VersionedMap.fi
rePropertyChange(SharedMapImpl.java:905)
at 
org.jdesktop.wonderland.modules.sharedstate.client.SharedMapImpl$VersionedMap.re
vertPut(SharedMapImpl.java:717)
at 
org.jdesktop.wonderland.modules.sharedstate.client.SharedMapImpl$1.onFailure(Sha
redMapImpl.java:220)
at 
org.jdesktop.wonderland.client.comms.OKErrorResponseListener.responseReceived(OK
ErrorResponseListener.java:44)
at 
org.jdesktop.wonderland.client.comms.BaseConnection.notifyResponseListener(BaseC
onnection.java:236)
at 
org.jdesktop.wonderland.client.comms.BaseConnection.messageReceived(BaseConnecti
on.java:114)
at 
org.jdesktop.wonderland.client.comms.WonderlandSessionImpl$ClientRecord.handleMe
ssage(WonderlandSessionImpl.java:1002)
at 
org.jdesktop.wonderland.client.comms.WonderlandSessionImpl.fireSessionMessageRec
eived(WonderlandSessionImpl.java:489)
at 
org.jdesktop.wonderland.client.comms.WonderlandSessionImpl$WonderlandClientListe
ner.receivedMessage(WonderlandSessionImpl.java:785)
at 
com.sun.sgs.client.simple.SimpleClient$SimpleClientConnectionListener.handleSess
ionMessage(SimpleClient.java:601)
at 
com.sun.sgs.client.simple.SimpleClient$SimpleClientConnectionListener.handleAppl
icationMessage(SimpleClient.java:482)
at 
com.sun.sgs.client.simple.SimpleClient$SimpleClientConnectionListener.receivedMe
ssage(SimpleClient.java:442)
at 
com.sun.sgs.impl.client.simple.SimpleClientConnection.bytesReceived(SimpleClient
Connection.java:170)
at 
com.sun.sgs.impl.io.SocketConnection.filteredMessageReceived(SocketConnection.ja
va:144)
at 
com.sun.sgs.impl.io.CompleteMessageFilter.processReceiveBuffer(CompleteMessageFi
lter.java:138)
at 
com.sun.sgs.impl.io.CompleteMessageFilter.filterReceive(CompleteMessageFilter.ja
va:103)
at 
com.sun.sgs.impl.io.SocketConnectionListener.messageReceived(SocketConnectionLis
tener.java:128)
at 
org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(
AbstractIoFilterChain.java:703)
at 
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Abs
tractIoFilterChain.java:362)
at 
org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilte
rChain.java:54)
at 
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived
(AbstractIoFilterChain.java:800)
at 
org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:
247)
at 
org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(Executo
rFilter.java:307)
at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:8
86)
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:680)

Original comment by jonathan...@gmail.com on 27 Mar 2012 at 5:29

GoogleCodeExporter commented 9 years ago
Removed logger message that was causing NPE. Please see attached diff.

Original comment by pympno...@gmail.com on 27 Mar 2012 at 6:02

Attachments:

GoogleCodeExporter commented 9 years ago
This issue was closed by revision r4831.

Original comment by jonathan...@gmail.com on 29 Mar 2012 at 9:24