• Login
sketchucation logo sketchucation
  • Login
🤑 SketchPlus 1.3 | 44 Tools for $15 until June 20th Buy Now

SketchyPhysics 3x June 27 version.

Scheduled Pinned Locked Moved SketchyPhysics
95 Posts 12 Posters 23.0k Views 12 Watching
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J Offline
    JaViXP
    last edited by 2 Jul 2009, 22:09

    That sounds cool! I can't try this though, it displays an error 😞

    By the way, is there a way to stop the simulation and save it as the model? I mean, you are running the simulation with a breakable box, the box is broken, can you copy the model and paste into other model? (Sorry, my English is hard to understand 😳 )

    "Giving up is way harder than trying"
    JaViXP's Rendering

    1 Reply Last reply Reply Quote 0
    • P Offline
      phy
      last edited by 3 Jul 2009, 00:56

      It doesn't work for me ether wacov I get this error, taken from the ruby console:

      String doesn't compile; Error in Script:
      @@bPause=true
      
      SketchyPhysicsClient;;physicsReset()
      
      MSketchyPhysics3;;closeControlPanel()
      
      freeDirectInput()
      (eval);4;in `initEvents'; undefined method `freeDirectInput' for #<MSketchyPhysics3;;SP3xBodyContext;0x5dd6378>#<RuntimeError; Error in Script&#058;
      @@bPause=true
      
      SketchyPhysicsClient;;physicsReset()
      
      MSketchyPhysics3;;closeControlPanel()
      
      freeDirectInput()
      (eval);4;in `initEvents'; undefined method `freeDirectInput' for #<MSketchyPhysics3;;SP3xBodyContext;0x5dd6378>>
      C;/Program Files/Google/Google SketchUp/Plugins/SketchyPhysics3/ControllerCommands.rb;966;in `initEvents'
      

      and Javi just pause the simulation and save the model.

      Tableau de comparaison de Staxyn s'agit d'un mГ©dicament uniquement sur ordonnance.

      1 Reply Last reply Reply Quote 0
      • C Offline
        CPhillips
        last edited by 3 Jul 2009, 05:32

        @javixp said:

        Well done I like it! 👍

        So, Chris, any new features we missed? 😄

        Well, there is a lot that is still possible. I haven't seen anyone using teleport yet. Nor getVelocity/setVelocity, getTorque/setTourque or setLinearDamping/setAngularDamping. Any script connected joint can also be disconnected but I dont know a good example for that. Also the scripted code area will take tabs now. That makes it easier to write readable script.

        1 Reply Last reply Reply Quote 0
        • C Offline
          CPhillips
          last edited by 3 Jul 2009, 05:35

          @wacov said:

          I'm on a roll...

          Turns out you CAN reset the simulation from within the script. Use this little chunk of code:

          @@bPause=true
          > SketchyPhysicsClient;;physicsReset()
          > MSketchyPhysics3;;closeControlPanel()
          > freeDirectInput()
          

          In the scripted field.

          I found this near the bottom of SketchyPhysicsTool.rb, it seems to work totally normally for me, but if there's a problem, there's not much I can do about it 😄

          I am not sure that will work correctly in all cases. Ill try to add something official.

          1 Reply Last reply Reply Quote 0
          • C Offline
            CPhillips
            last edited by 3 Jul 2009, 05:36

            @wacov said:

            Took quite a while to code this right, and I can't get the faces to smooth, but here it is! Seamless cloth!!

            Very impressive Wacov!

            1 Reply Last reply Reply Quote 0
            • C Offline
              CPhillips
              last edited by 3 Jul 2009, 06:03

              @phy said:

              Um, CPillips how do you use the breakit command or is it a command. I don't mean the split command by the way. Wacov that's fantastic. 👍

              "breakit" is an internal command called by "split". If you want to break an object into more than 2 pieces use this:

              
              split(self,2)
              
              

              The "2" means split twice, so you'll get 4 pieces. If you use 3 you will get 16 pieces. 4=256. So dont go nuts. Also remember Sketchup will sometimes crash when you split. The more splits the more likely this is to happen.

              1 Reply Last reply Reply Quote 0
              • C Offline
                CPhillips
                last edited by 3 Jul 2009, 08:20

                I was going to do an example for split, but it turns out there are some more bugs with it. It wont work in "onstart" for example. use this instead:

                ontick{
                   if(frame==1)
                      split(self,2)#break into 4 pieces 
                      ontick{} #disable ontick
                   end
                }
                
                1 Reply Last reply Reply Quote 0
                • P Offline
                  phy
                  last edited by 3 Jul 2009, 13:10

                  Okay thanks.

                  Tableau de comparaison de Staxyn s'agit d'un mГ©dicament uniquement sur ordonnance.

                  1 Reply Last reply Reply Quote 0
                  • W Offline
                    Wacov
                    last edited by 3 Jul 2009, 17:10

                    Got cloth smoothing working, and made it easier to change the scripting (everything's in the floor). Chris, it seems if there's a script error in onend, objects fail to move back to their starting positions... and it can't be undone 😕 Try sticking jargon in onend, and see for yourself.

                    Anyway, the updated cloth!


                    Cloth wth smooth faces.skp

                    http://sketchup.google.com/3dwarehouse/cldetails?mid=3096a836877fb9af6cd8ad826e9017b8&prevstart=0

                    1 Reply Last reply Reply Quote 0
                    • C Offline
                      CPhillips
                      last edited by 4 Jul 2009, 04:18

                      @wacov said:

                      Chris, it seems if there's a script error in onend, objects fail to move back to their starting positions... and it can't be undone 😕 Try sticking jargon in onend, and see for yourself.

                      Thanks. I fixed it.

                      1 Reply Last reply Reply Quote 0
                      • C Offline
                        CPhillips
                        last edited by 4 Jul 2009, 08:19

                        This script is inspired by a new model on 3dwarehouse that ran really smooth... once I turned off shadows and edges.

                        Paste this into one objects scripted field. It tries to speed up the rendering by disabling shadows and edges during the simulation. Don't worry if you dont understand it. It should be plug and play.

                        onstart{
                              #save current settings
                           ropts=Sketchup.active_model.rendering_options
                           sopts=Sketchup.active_model.shadow_info
                           @saveROpts=ropts.collect{|k,v|[k,v]}
                           @saveSOpts=sopts.collect{|k,v|[k,v]}
                        
                              #changes to speed up render
                           ropts["EdgeDisplayMode"]=0
                           sopts["DisplayShadows"]=false
                        
                        }
                        onend{
                              #restore render settings.
                           @saveROpts.each{|k,v|; Sketchup.active_model.rendering_options[k]=v}
                           @saveSOpts.each{|k,v|; Sketchup.active_model.shadow_info[k]=v}
                        }
                        

                        Original model. http://sketchup.google.com/3dwarehouse/details?mid=3107b3d9c4c935b2b006aed51312d6bb&prevstart=0

                        1 Reply Last reply Reply Quote 0
                        • J Offline
                          JaViXP
                          last edited by 4 Jul 2009, 10:53

                          Thanks, that script will be really helpful 👍

                          The bot... Love playing with it! 😆 (I know it's Pecoler's)
                          By the way, how do you keep the breakable objects already broken? I mean, they are crashed and the simulation didn't start.

                          "Giving up is way harder than trying"
                          JaViXP's Rendering

                          1 Reply Last reply Reply Quote 0
                          • W Offline
                            Wacov
                            last edited by 5 Jul 2009, 08:50

                            Uh... Chris... the Joystick commands don't work. I know you said it's all completely new, but that seems like a step backwards 😕

                            You can bridge the gap using global variables, but that's the only way I can find... here's a demo:


                            Fixed, hopefully

                            http://sketchup.google.com/3dwarehouse/cldetails?mid=3096a836877fb9af6cd8ad826e9017b8&prevstart=0

                            1 Reply Last reply Reply Quote 0
                            • P Offline
                              phy
                              last edited by 5 Jul 2009, 12:58

                              Um, Wacov is the file supposed to not work?
                              Okay it works now.

                              Tableau de comparaison de Staxyn s'agit d'un mГ©dicament uniquement sur ordonnance.

                              1 Reply Last reply Reply Quote 0
                              • P Offline
                                phy
                                last edited by 6 Jul 2009, 17:19

                                If you cut the script in box1, and run and reset the simulation, and then paste the script back into box1 it will work, I don't know why.

                                Tableau de comparaison de Staxyn s'agit d'un mГ©dicament uniquement sur ordonnance.

                                1 Reply Last reply Reply Quote 0
                                • P Offline
                                  phy
                                  last edited by 6 Jul 2009, 17:31

                                  Sketchyphysics isn't recognizing @@pos2 for some reason. To see for yourself open ruby console hit the play button.

                                  Tableau de comparaison de Staxyn s'agit d'un mГ©dicament uniquement sur ordonnance.

                                  1 Reply Last reply Reply Quote 0
                                  • W Offline
                                    Wacov
                                    last edited by 6 Jul 2009, 18:11

                                    Thanks Phy! Since you pinpointed it, I found the problem. Seems it was trying to use @@pos2 before it had been created, I just had to add it into onstart and it worked fine!

                                    http://sketchup.google.com/3dwarehouse/cldetails?mid=3096a836877fb9af6cd8ad826e9017b8&prevstart=0

                                    1 Reply Last reply Reply Quote 0
                                    • W Offline
                                      Wacov
                                      last edited by 7 Jul 2009, 18:49

                                      Okay, playing around with vectors (another toe in the API pond). Basically, I'm finding them, then changing their length with joystick inputs. I then use them to control the velocity of an object; in this case, the player in an FPS system; this works pretty sweet, so I'll continue to add features, and see where it takes me!

                                      EDIT: Fixed. Tell me if it's not 😉


                                      FPS Rig1.0.skp

                                      http://sketchup.google.com/3dwarehouse/cldetails?mid=3096a836877fb9af6cd8ad826e9017b8&prevstart=0

                                      1 Reply Last reply Reply Quote 0
                                      • P Offline
                                        Physicsguy1
                                        last edited by 8 Jul 2009, 22:41

                                        there is an Error. double-clicking wont kick the object.

                                        1 Reply Last reply Reply Quote 0
                                        • C Offline
                                          CPhillips
                                          last edited by 8 Jul 2009, 23:38

                                          I removed double click = kick because it was seldom used and interfering with the new events.

                                          1 Reply Last reply Reply Quote 0
                                          • 1
                                          • 2
                                          • 3
                                          • 4
                                          • 5
                                          • 3 / 5
                                          3 / 5
                                          • First post
                                            55/95
                                            Last post
                                          Buy SketchPlus
                                          Buy SUbD
                                          Buy WrapR
                                          Buy eBook
                                          Buy Modelur
                                          Buy Vertex Tools
                                          Buy SketchCuisine
                                          Buy FormFonts

                                          Advertisement