-
Notifications
You must be signed in to change notification settings - Fork 182
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Most demos in demosSandbox do not work as intended #216
Comments
as far as I know most all demo works. |
are you using lastest stable release, if so the try getting 3.14c on the graphic I do not know what to say, the graphics in newton are just for showing the physics, the may run fat or slow for system to system. |
Hi Julio, I just downloaded the latest release and the Object Placement demo and the Multi geometry collision both crash here. All others are working. |
(In hindsight, "most" is probably an overstatement, but it's still "many") All tests done on x64 with avx or avx_d plugin on Arch Linux using Newton v3.14c compiled locally using When reading this, please keep in mind that people run the sandbox to get a feel for newton-dynamics capabilities, without looking at the code. Starting the sandboxI'm used to just reach the compiled binary by tab completion, from my build folder:
However, if that is done, then newton-dynamics won't find the AVX library on my machine. Also some sample loading a file will just crash without any useful information for the user.
Changing the current directory to the sandbox folder will fix this (and that's also how I did the following tests: with changed directory). All samplesNone of the options in the "File" menu work for me (or I don't understand them?), except "Exit". The help menu is always empty. The movement of the camera feels very slow. I instinctively held Shift to go faster, but it just made it slower. The rotation of the camera is even worse, and rotating the camera by 180 Degree using mouse-drags is virtually impossible. I also think the vertical axis is inverted for my personal preference. I think this should be configurable or swapped. Hotkeys like F1 for resetting the sample are not advertised; F1 is only advertised by individual sample(s), but it always seems to work. Specific samplesUsing the newton mesh toolIt's unclear what the newton mesh tool even is. Newton CradleOnly has a single ball, so this is just one ball swinging around after being hit. The ball being shot at it also slowly floats away. Kinematic bodiesThe moving plate on the right does not have collision, but is barely ghosted. Later I realized that it was ghosted and probably only shows collisions. Object placementCrashes immediately:
User Infinite Plane collision meshThis takes 0.6ms of physics time and claims to run at 500 FPS; however, the actual visible framerate is more like 15 FPS. Flat Land GameThis should probably called "2D physics". A better demo for this might be to have objects in a random pile, or a 2D pile being shot with balls from various angles (in 3D). Multi geometry collisionCrashes once about 5 layers of objects have fallen:
Standard JointsThis should probably called "Rope". Servo actuators joints(This primarily seems to affect avx_d in debug builds) Construction VehicleWhen moving the "bucket x" slider back and forth a couple of times, then it's easy to get the bucket stuck in an upwards position where it won't move down anymore. When moving the "bucket y" slider back and forth a couple of times, then it's easy to get the bucket to self-intersect with the cabin, which causes physics to "explode" - the vehicles float away. (This primarily seems to affect avx_d in debug builds) Six axis manipulatorIt is unclear what the white lasso shape is for, or how this demo relates to physics. Passive RagdollMost people are stuck in their default T pose and will bounce around randomly. Balancing (WIP)If this is still WIP, then maybe it should not be shown yet? Single body carCrashes immediately after the HUD (Speedometer?) flashes for a brief moment:
Super car"Truck Steer Mode" should be more descriptive. The truck starts rolling slowly after being spawned, so when switching to the Viper, the truck will keep rolling forever (there doesn't seem to be anything stopping it). This is not a problem itself, but might lead to the following problem. (I assume this happened when the truck fell from the plane - presumably because I accidentally hit it or it slowly rolled off - it should still be handled more gracefully)
Heavy vehiclesNothing shows up, other than the skybox. Animated player controllerWhen starting the app, the character is already in walking animation. He never switches to idle or jumping animation. Pressing "c" to crouch cause:
The world is too large for the character. Walking is also very slow but there's no information about how to run. When walking and stopping on the first step, and then strafing into the next one, the character will be unable to walk up, will slowly be forced into the ground, and eventually fall through the ground. Advanced player controllerCharacter is always stuck in some sort of idle animation. It's also not clear what this shows over the other player controller demos. Simple cloth patchCrashes immediately:
When I ran this without debug mode, the cloth patch would behave like a solid piece - it did not act like cloth at all. It was like a rigid plate that also halfway intersected with ground. Simple soft bodyCrashes immediately (after the window hangs about 3 seconds):
Other issues might still exist, but these are the most critical ones to me. |
Six axis manipulator is a inverdynamic demostration for peopel who do robitic, they kknwo what it mean. adding object to pick add nothing to the demo, since the object of to appling the controll. Passive Ragdoll is a diffrent kinbg of rag doll when the joint have friction. it soeul work perfect in all cases. Advanced player controller it simpel show teh cpasuel pleye cotrontll plaion a animation. The engien is no an animation system, mos teh demo you see in teh SDK are of tow kind. |
I know that it's an Kinematic/IK demo. That portion works fine. However, until recently, there was a The code also says the robot is supposed to track it - but this does not actually happen for me (or I don't get it):
An object to pick could help because the robot could actually track the object, as well as showing grip behaviour. I believe the tracking portion is a goal with the spline (keeping the gripper on a spline), but it's not working.
Here are the ragdolls how they rest after dropping (they are way too stiff and bounce like rigid objects, often landing in their T pose; in some instances knees will move after the have been on the ground for a while): In other situations they spawn within the terrain or fall into it; the terrain height should be taken into consideration when spawning them. So even if the joints should have friction, then the sample must be tuned to be much less stiff. It's acting like a rigid plane and it will intersect the floor (this is how it rests after lifting it and letting it fall down again).
It should use the player model / capsule from the basic player controller sample then. Having an animated character implies the animations should work. Especially with this being after "Animated player controller" in the list (which sets expectations).
My impression is that newton-dynamics is a good piece of software, but I can't blame anyone who will not use it because:
again: I know that newton has a ton of good features; but I also understand why some people would be scared away. |
Well if the demos are so bad, there are other physics engines that perhaps
sue better yous expectations.
I am not judging anyone who decided against it, the engine is what it is,
sorry it is not what you expected.
…On Sun, May 3, 2020, 11:34 AM Jannik Vogel ***@***.***> wrote:
Six axis manipulator is a inverdynamic demostration for peopel who do
robitic, they kknwo what it mean.
I know that it's an Kinematic/IK demo. That portion works fine.
However, until recently, there was a TestSpline function which drew (what
appears to be) unrelated splines to the UI (which is problematic as it's
just confusing)
Recently, this was changed to draw a white spline in 3D space. However,
that spline *still* does absolutely nothing for me. It doesn't seem to
interact with the robot (or its code) in any way.
Looking at the code, the variable m_splineCurve in the robot class is
unused.
The code also says the robot is supposed to track it - but this does not
actually happen for me (or I don't get it):
- If this is a broken / incomplete feature, then it should not be
displayed (as it will confuse users who look at the sample).
- If this is a working feature, there should be a description as to
what it's supposed to show.
adding object to pick add nothing to the demo, since the object of to
appling the controll.
An object to pick could help because the robot could actually track the
object, as well as showing grip behaviour.
I believe the tracking portion is a goal with the spline (keeping the
gripper on a spline), but it's not working.
Passive Ragdoll is a diffrent kinbg of rag doll when the joint have
friction. it soeul work perfect in all cases.
Here are the ragdolls how they rest after dropping (they are way too stiff
and bounce like rigid objects, often landing in their T pose; in some
instances knees will move after the have been on the ground for a while):
[image: 2020-05-03-201521_984x495_scrot]
<https://user-images.githubusercontent.com/360330/80922108-14579780-8d7b-11ea-8f24-b0fe29c7b112.png>
In other situations they spawn within the terrain or fall into it; the
terrain height should be taken into consideration when spawning them.
You can still see their stiffness / T Pose:
[image: 2020-05-03-201620_984x495_scrot]
<https://user-images.githubusercontent.com/360330/80922109-1588c480-8d7b-11ea-8d61-fcc53f063685.png>
So even if the joints should have friction, then the sample must be tuned
to be much less stiff.
However, I think this is actually a bug, because the cloth sample is
affected in a similar way (being 100% stiff):
[image: 2020-05-03-202016_984x495_scrot]
<https://user-images.githubusercontent.com/360330/80922173-84661d80-8d7b-11ea-907c-387035e0a71f.png>
It's acting like a rigid plane and it will intersect the floor (this is
how it rests after lifting it and letting it fall down again).
Advanced player controller it simpel show teh cpasuel pleye cotrontll
plaion a animation. The engien is no an animation system,
It should use the player model / capsule from the basic player controller
sample then. Having an animated character implies the animations should
work. Especially with this being after "Animated player controller" in the
list (which sets expectations).
I it my hope to show enought of the physocs that is suffient for a end use
to detect what he look for.
My impression is that newton-dynamics is a good piece of software, but I
can't blame anyone who will not use it because:
- The master git revision, and stable releases, often include dirty
code or commits which break features. This makes it very unlikely for me to
consider it for any serious project, because I can't even rely on stable
versions being fully functional. This shows in the demos.
- Many of the demos assert or crash, so newton-dynamics does not feel
stable enough. If the sample code crashes at startup, then users will have
to assume that many other portions will also randomly crash, leak memory,
or otherwise.
- Many of the demos assert or crash during use, so newton-dynamics
does not seem capable of running more than a minute or two without crash.
So I can't blame anyone who would question how it could support any serious
application (especially with most popular applications using it being from
a decade ago or more).
again: I *know* that newton has a ton of good features; but I also
understand why some people would be scared away.
The project makes a really bad first impression. And the bugs persisting
in stable releases will also scare developers during development (as they
don't know which revision of newton-dynamics can be trusted for the release
of their software).
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#216 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AB6EPJETDRPJWT23K4D5CZDRPW2KJANCNFSM4MXMZGYA>
.
|
I have been using newton-dynamics since 2005 or so (and have also used ODE and Bullet since then). I believe that newton is the most suitable solution for my current project. However, my current project is a toolchain / SDK - so it will be used by other developers who are new to newton-dynamics. This means I need material to show that newton-dynamics works. The demos shouldn't crash, and they should work for everyone. Currently they don't. Right now, newton-dynamics hides its capabilities behind broken demos.
It's not an issue with the physics portion in newton-dynamics, but just with the default configuration or hacky changes in most demos. And I consider that to be easily fixable bugs. Most of the items on my list above are like that. For example: That cradle demo is broken because of poor development practices: It was modified for a WIP solver change, but then the demo was left in this broken state. I'm willing to fix at least some of those bugs; but I would like these issues to be acknowledged first (do they only happen for me? why do they happen?). It's very hard to tell if some bugs exist for known reasons and I don't want to waste my time debugging known problems. |
I second that my experience is that the demos are completely broken, and hence has lead me to this thread for confirmation. |
The demos are still in a bad state. The main problem I have with this, is as JayFoxRox mention, Im not sure what works, and what doesnt. For example the Simple Vehicle (which I believe is the MultiBodyVehicle.cpp?) just crashes as mentioned above, and theres no clear reason why. Then in the code, there are a number of Assert(0); as well as many #if 0 without any commenting or explanation? |
I am not sure what you are referring too. I just try the vehicles and seems to work fine, are you playing an older version? Anyway as for some demos been broken, on any give download The engine is not the demos. I take chances trying experiment stuff and I put the out there, even when they are not completed. |
None of the demos crash here on Windows. But the "heavy vehicle" demo's
user interface doesn't seem to work.
None of the driving keyboard controls seem to do anything.
Also the newton_tests don't work out of the box. Here's the error message.
[image: newton_tests_error.jpg]
…On Tue, Dec 27, 2022 at 6:25 PM NewtonDynamics ***@***.***> wrote:
I am not sure what you are referring too.
as of teh last commit yesterday all demos in 4.01 are working.
The engine builds on all supported platforms: Linux, Windows, Mac,
Android. There are even automatic unit tests
that buidl the engine on Windows and Linux each time a chnge is commited.
I just try teh vehicle and seems to work fine,
—
Reply to this email directly, view it on GitHub
<#216 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AB56PPYBE2IVRZX74UDMXHTWPN3HLANCNFSM4MXMZGYA>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
ah, thanks for that note: anyway you are correct, the UI controls are no working with keyboard, I will fix that. |
Also the newton_tests don't work out of the box. Here's the error message.
Hmm, they are working now after I closed vs2022 and then opened it again.
…On Tue, Dec 27, 2022 at 7:06 PM NewtonDynamics ***@***.***> wrote:
ah, thanks for that note:
I recent try to code the Vehicle with a steering and a Joystick.
The control work best with steering, because some one is trying a custom
steering and I can not say more.
But I realized that is very difficult to emulate analog control with
keyboard, so I try the xbox Controller.
xBox controller is better, but still so anywhere what you can get with an
actual steering, it is a huge difference.
anyway you are correct, the UI controls are no working with keyboard, I
will fix that.
—
Reply to this email directly, view it on GitHub
<#216 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AB56PPYTMOTKFTS32RV2GYLWPOAANANCNFSM4MXMZGYA>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
hi Hurley, I just try the demo_test in windows. and I get these results.
are you referring to different tests? edit: I was done but a Contributor and I am very grateful for that contribution. He did a very good job. In fact those are the demos most ne use should be trying, to get a idea how the engine works. |
The tests all work now for me too. Originally I got that error message I
showed you but after quitting vs2022 and restarting the tests are working
fine now.
…On Tue, Dec 27, 2022 at 7:13 PM NewtonDynamics ***@***.***> wrote:
hi Hurley, I just try the demo_test in windows. and I get these results.
[----------] 1 test from StaticBody
[ RUN ] StaticBody.mesh
[ OK ] StaticBody.mesh (47 ms)
[----------] 1 test from StaticBody (47 ms total)
[----------] 1 test from RigidBodyInstances
[ RUN ] RigidBodyInstances.Instancing
[ OK ] RigidBodyInstances.Instancing (310 ms)
[----------] 1 test from RigidBodyInstances (311 ms total)
[----------] 1 test from RayCast
[ RUN ] RayCast.rayCastFilter
[ OK ] RayCast.rayCastFilter (7 ms)
[----------] 1 test from RayCast (8 ms total)
[----------] 1 test from RigidBodyNotify
[ RUN ] RigidBodyNotify.MoveWithUnitForceDifferentMasses
[ OK ] RigidBodyNotify.MoveWithUnitForceDifferentMasses (4 ms)
[----------] 1 test from RigidBodyNotify (4 ms total)
[----------] Global test environment tear-down
[==========] 8 tests from 7 test suites ran. (409 ms total)
[ PASSED ] 8 tests.
are you referring to different tests?
—
Reply to this email directly, view it on GitHub
<#216 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AB56PP2CPYLJEJVCX7H5OBTWPOA23ANCNFSM4MXMZGYA>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
I have been using 3.14 across multiple platforms, because the version 4 I have had all sorts of problems compiling on Linux, Android, and Windows. Note: This is building static libs and embedded code, not using shared libs. With version 3.14 I was able to get built across Windows, Android and Linux however all of the demos (as mentioned above previously from @JayFoxRox) failed to work fully. Please read his detailed information - it is still in this state. I am referring to 3.14, and multi platform. Linux, OSX, IOS, Android and Win. Generally earlier versions did tend to match. I know maintaining 3.14 and 4 is a big job, If version 3.14 isnt going to be supported further (as it appears) then maybe putting a readme.md in the repo declaring this, or maybe the state of the samples in 3.14 are not current (or something like that). I cant move my older projects to 4 so its unlikely I can continue using it. The reality is, if I need to make major upgrades, then its much more likely the projects I use will probably migrate to a newer engine like Jolt or similar. Again this isnt a reflection on Newton itself - it is a good physics system. |
Well, I am sorry for your inconvenience with 3.14
I do not remember making changes that render tge engine un usable. I know
for a fact, there are people still using 3.14 in multiple platform without
those errors, but again they are not using it for the demos.
The corrent version of newton is 4.02
There will be not more time dedicated to any older version.
You do not have to kept trying using something that is causing you so much
aggravation.
Try using something else and consider your time a leaning experience.
Good luck.
…On Wed, Dec 28, 2022, 12:36 AM David Lannan ***@***.***> wrote:
I have been using 3.14 across multiple platforms, because the version 4 I
have had all sorts of problems compiling on Linux, Android, and Windows.
Note: This is building static libs and embedded code, not using shared
libs. With version 3.14 I was able to get built across Windows, Android and
Linux however *all* of the demos (as mentioned above previously from
@JayFoxRox <https://github.com/JayFoxRox>) failed to work fully. Please
read his detailed information - it is still in this state.
I am referring to 3.14, and multi platform. Linux, OSX, IOS, Android and
Win. Generally earlier versions did tend to match. I know maintaining 3.14
and 4 is a big job, If version 3.14 isnt going to be supported further (as
it appears) then maybe putting a readme.md in the repo declaring this, or
maybe the state of the samples in 3.14 are not current (or something like
that). I cant move my older projects to 4 so its unlikely I can continue
using it.
The reality is, if I need to make major upgrades, then its much more
likely the projects I use will probably migrate to a newer engine like Jolt
or similar. Again this isnt a reflection on Newton itself - it is a good
physics system.
—
Reply to this email directly, view it on GitHub
<#216 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AB6EPJAI6FITIPX73SS7V4LWPP3YPANCNFSM4MXMZGYA>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
ok Hurleyworks I did the mapping for the key use to drive the vehicle, but the moving parts for the heavy vehicle will only work with Game controller. anyway thanks for that warning. |
I tried the latest version and the heavy vehicles are now drivable with the
keyboard. But there is no sound like there is in the basic vehicle demo
…On Wed, Dec 28, 2022 at 2:16 PM NewtonDynamics ***@***.***> wrote:
ok Hurleyworks
I fixed the GameController input.
there multiple bugs.
The first was that the mapping was originally a one to one using the
keyboard.
but when using an xbox or a wheel controller, I realized that it needs a
virtual mapping because each controller is different
so I made a virtual mapping that maps 32 keys to a vector. must the scan
code from keyboard fell outside that range.
I did the mapping for the key use to drive the vehicle, but the moving
parts for the heavy vehicle will only work with Game controller.
I will have to maps the key, 1, 2, 3, 4, .... to some key in file
ndGameControllerInputs so for now they will only work when using a game
controller.
but all vehicle should be drivable with keyboard or game controllers
anyway thanks for that warning.
—
Reply to this email directly, view it on GitHub
<#216 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AB56PP5YHNRZQVJIH23QIQTWPSGYNANCNFSM4MXMZGYA>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
Ah yes, the heavy vehicle demos does not have sound.
When I copy from the basic vehicle there was not sound support. So the demo
base diverged.
Thank for testing, it
…On Wed, Dec 28, 2022, 4:58 PM Steve Hurley ***@***.***> wrote:
I tried the latest version and the heavy vehicles are now drivable with the
keyboard. But there is no sound like there is in the basic vehicle demo
On Wed, Dec 28, 2022 at 2:16 PM NewtonDynamics ***@***.***>
wrote:
> ok Hurleyworks
> I fixed the GameController input.
> there multiple bugs.
> The first was that the mapping was originally a one to one using the
> keyboard.
> but when using an xbox or a wheel controller, I realized that it needs a
> virtual mapping because each controller is different
> so I made a virtual mapping that maps 32 keys to a vector. must the scan
> code from keyboard fell outside that range.
>
> I did the mapping for the key use to drive the vehicle, but the moving
> parts for the heavy vehicle will only work with Game controller.
> I will have to maps the key, 1, 2, 3, 4, .... to some key in file
> ndGameControllerInputs so for now they will only work when using a game
> controller.
> but all vehicle should be drivable with keyboard or game controllers
>
> anyway thanks for that warning.
>
> —
> Reply to this email directly, view it on GitHub
> <
#216 (comment)
>,
> or unsubscribe
> <
https://github.com/notifications/unsubscribe-auth/AB56PP5YHNRZQVJIH23QIQTWPSGYNANCNFSM4MXMZGYA
>
> .
> You are receiving this because you commented.Message ID:
> ***@***.***>
>
--
-Steve
http://berserko.hurleyworks.com/ <http://www.hurleyworks.com>
—
Reply to this email directly, view it on GitHub
<#216 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AB6EPJDGEPJKLAFW5SYQE5DWPTO5FANCNFSM4MXMZGYA>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
Many of the demos in the sandbox do not work for me. I get crashes with some, and visual errors or lack of physics in others. Depending on the order I launch them in, I also get slightly different behaviour.
Most of the demos seem to run slow, even at high FPS (implying rendering issues of some sort).
I have used Newton around 2005, so I know it's good. But I assume that many people would be scared by this. It also has me worried wether these are bugs in the samples, or wether the solvers / core features are currently broken.
I personally assume these bugs have to do with random code being disabled to work on new solvers or other things within newton (as this is a pattern I had seen with newton in 2019 already - and also it's why I abandoned it then: lack of stable repository / very bad git history with typos and unclear changes).
If issues with the samples are not known / specific to me, then I'll go into detail as to what I consider unexpected behaviour. It will be a lot of work to document them, so I'd rather want to know if problems are expected (so they don't have to be reported).
If these issues are to be expected, then I'd still like to see it documented that the demos might be broken right now + I'd express my desire for better development practices, where "master" (or at least the last tagged release) actually works, and where the history is "clean" and descriptive.
The text was updated successfully, but these errors were encountered: