Ever since M$ took over they don’t support ie11 anymore and it looks something may be going on with that. I can’t merge, compare forks or do pull request now. Just sits there. When on the issues part, cant edit posts anymore.
Checking mergeability… Don’t worry, you can still create the pull request.
Edit:
Ill just post the fix and link to here in the issue. Nothing else I can do.
I think I’m a bit late to the party, but would it be possible to add setters for the consumeDrags and consumeDrops booleans in the DragHandler cursor listener?
I now use a cloned version of this because I need to consume the drop event…
edit: If needed I can create an issue / PR on github for this, don’t know what you prefer.
First, a big thank you for these shiny new libs, @pspeed!
Second: I’ve got a problem with the 1.3.0 version of sim-ethereal regarding the time source. The RemoteTimeSource on the client gives me very big values for getTime(), which look roughly like the nanoTime(). The frame times I get in my SharedObjectListener look like time from server startup, though.
I used etherealClient.getTimeSource().getTime(); to interpolate the positions before (in v1.2.1), but now it isn’t working, as the time is far outside the range of my buffer, that uses the ethereal frame time.
I’ve already applied the patch you posted above for the use of SiO2 and ethereal, and I didn’t found a place where I use the nanoTime directly on the server, only the time since server startup.
I found the issue, and you are right, the error was on my side.
I extended the GameSystemManager to implement a fixed timestep gameloop. In the new SiO2 version the TimeStep gets initialized on the first frame, and I made a mistake migrating my code to that new design, so I basically broke the TimeStep.
Thanks for your help and sorry for wasting your time.
I always take risks when I change something fundamental like “time tracking”… but I felt it was in the end the best decision since problems related to this were actually real bugs in other code.
Been playing around with this Viewport stuff and its dam awesome. I don’t think I would of figured this out on my own.
Drag and drop and mouse events all work now. Haven’t rewrote the whole thing with FilterPostProcessor and rotations yet but what’s happening with testing things so far is sweet.
I hadn’t really thought about it to be honest. I guess I could do this again soon. I think there is at least one thing I want to fix in Lemur before the next push, though.
I plan to start slow-rolling some new releases of the various packages over the next week or so. SimMath was the lowest tier dependency of a bunch of other things and I needed to do it before releasing a new SimEthereal.
Change log:
Added Quatd.fromAngles(double[])
Added Quatd.equals() and Quatd.hashCode()
Added Vec3d.isSimilar() and Quatd.isSimilar() that allow for
comparison of values within some epsilon.
Converted a System.out.println() in Vec3Bits to a log.debug() call.
Added Vec3d.interpolateLocal().
Added Quatd.slerpLocal().
Added PositionTransition3f and PositionTransition3d.
Deprecated PositionTransition in favor of PositionTransition3f or
PositionTransition3d.
Deprecated PositionTransition.getFrameVelocity() and did not port it
to PositionTransition3f or PositionTransition3d.
Fixed zone ID calculation for non-uniform grids. See PR #2.
Modified ZoneManager to automatically send “no-change” updates for
objects it is managing but didn’t receive updates for. See PR #5
(Note: this could seem like a ‘breaking change’ to any apps relying
on objects to auto-expire in this way… just know that doing so was
leaving extra garbage around and so not really a solution.)
Added a thread-safe BufferedHashSet for creating “one writer, many readers”
fast thread safe hash sets.
Added a double-buffered thread safe active IDs set to the NetworkStateListener.
Added an error log message when updating an object with a bounds bigger than
supported by the current grid settings.
Just released Zay-ES core 1.3.1 and Zay-ES Net 1.4.0.
Core change log:
Fixed MemStringIndex.getStringId(string, false) to return -1 instead of throwing
an NPE if the string has no ID.
Modified DefaultEntityData.addEntityComponentListener() to throw an IllegalArgumentException
for null listeners.
Zay-ES Net changelog:
Fixed HostedEntityData.getStringInfo() to send back a null if the ID doesn’t exist
for the string rather than sending back -1. A -1 would have been cached but a
null won’t be.
Added EntityDataHostedServer.getHostedEntityData() for setting up connection
specific entity stuff from other services.
Added support for client-specific ComponentVisibility filters that can be used to
limit the clients’ views of certain component values, e.g.: based on permissions,
local object visibility, etc…
Added lots of additional trace logging in support of the above.
Fixed HostedEntityData.getEntitySet() to force the next sendUpdates() to make
at least one pass through the entity sets. Else some components won’t be
properly tracked.
Fixed a bug in the new getPickRay() code where incorrect Rays were being
created if the Gui Bucket didn’t have a spatial at z=0.
Modified how TextEntryComponent calculates its cursor width to avoid cases
where cursors weren’t being drawn because of sub-pixel widths at certain
screen locations.
Added a TextField.setPreferredCursorWidth() styleable attribute that can be
used to change the default cursor width for text fields.
Modified DynamicInsetsComponent to treat the insets values as percentages
instead of always making them sum to 1. (That behavior still happens if
the total of min+max is more than 1.) This modification lets dynamic
insets support dynamic stretching instead of just positioning.
This is potentially a breaking change for code relying on the old
normalization. (though that was kind of weird)
Fixed pick session bug caused by empty GUI nodes. (added a null check)
Added Button.EFFECT_ENABLE and Button.EFFECT_DISABLE constants and modified
Button to call the appropriate effect chain during setEnabled(true/false).
Added Button.ButtonAction.Enabled and Button.ButtonAction.Disabled and
modified Button to call the appropriate command chain during
setEnabled(true/false).
Also, I released a new LemurProps that just adds double field/property support. (Version 1.1.0)