sketchucation logo sketchucation
    • Login
    ℹ️ Licensed Extensions | FredoBatch, ElevationProfile, FredoSketch, LayOps, MatSim and Pic2Shape will require license from Sept 1st More Info

    Game running half the speed in SU 2013 vs SU 8

    Scheduled Pinned Locked Moved Developers' Forum
    27 Posts 6 Posters 935 Views 6 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.
    • A Offline
      Anton_S
      last edited by

      @renderiza said:

      ...modifications of Scott Lininger is Prince IO code..

      Oh, I see, great person to start learning from πŸ‘

      @renderiza said:

      Your suspicions on SketchUp 2013 Make being slower than Pro was something I had as well and here is why...
      I will be interested to hear more about your tests. πŸ‘

      Found it!!!
      entity.transform! entity.transformation.inverse This line works very slow on SU2013 and very fast on SU8...
      Hmm... Two API functions. Which one of them lags, now?
      Well, it doesn't matters, what matters is that Trimble ruined the API. What were they smoking? To ruin the API, it's like to ruin whole SketchUp... Great idea though, to Trimble πŸ˜† They knew that API worried us (developers) the most, and they decided to pin it down, so we'd be interested in buying Pro.

      1 Reply Last reply Reply Quote 0
      • renderizaR Offline
        renderiza
        last edited by

        Hi,

        @anton_s said:

        entity.transform! entity.transformation.inverse This line works very slow on SU2013 and very fast on SU8...

        Interesting find but that rises more questions than answers. πŸ˜•

        @anton_s said:

        Well, it doesn't matters, what matters is that Trimble ruined the API. What were they smoking? To ruin the API, it's like to ruin whole SketchUp... Great idea though, to Trimble πŸ˜† They knew that API worried us (developers) the most, and they decided to pin it down, so we'd be interested in buying Pro.

        I am so hoping you are wrong with this...the mere idea of thinking if this is true or not gives me the "trimbles"!

        I prefer to think that it was not intentional and that once they find out if indeed that was the case it will be fixed.

        Again thanks for this tests!

        [url=https://www.sketchupcode.com/:z3kqsidd]My Extensions ...[/url:z3kqsidd]

        1 Reply Last reply Reply Quote 0
        • A Offline
          Anton_S
          last edited by

          @renderiza said:

          I am so hoping you are wrong with this...the mere idea of thinking if this is true or not gives me the "trimbles"!

          I didn't meant it seriously, I just meant it the ironic funny way... Like there were topics like "Does Trimble Listen", or πŸ˜† Or what does Trimble actually listen for? 🀣 But, I do love Trimble, I love the way they upgraded SU2013 to newer window Framework. It was actually what I wanted 😍

          1 Reply Last reply Reply Quote 0
          • D Offline
            driven
            last edited by

            a question, nothing more...

            when it reverts to "Make" are "Dynamic Components" enabled or disabled?

            or is there no change?

            john

            learn from the mistakes of others, you may not live long enough to make them all yourself...

            1 Reply Last reply Reply Quote 0
            • Chris FullmerC Offline
              Chris Fullmer
              last edited by

              @John - DC's still work in Make, you just can't edit the DC functions. So you can edit the fields that are already set up by the DC maker, but you can no longer add new fields, or functions.

              @Anton - yup, we're here listening! Trying to respond as best I can. thanks for pinning down the potential bottlenecks. I'll try to run some tests on them today and see if I can verify that I see the same behavior as you.

              Thanks everyone,

              Chris

              Lately you've been tan, suspicious for the winter.
              All my Plugins I've written

              1 Reply Last reply Reply Quote 0
              • D Offline
                driven
                last edited by

                @chris fullmer said:

                @John - DC's still work in Make... Chris

                hi Chris, I knew they stilled worked, but isn't it 'only' if turned 'on' .

                I remember that some recent scripts required that they are 'on' for the scripts to fully work [though they are not DC's].

                my thinking is do those two methods have anything to do with DC's being on or off

                john

                learn from the mistakes of others, you may not live long enough to make them all yourself...

                1 Reply Last reply Reply Quote 0
                • Chris FullmerC Offline
                  Chris Fullmer
                  last edited by

                  Ahh, DC's are turned on by default in Make. Is that what you mean? We don't disable them. The user would have to.

                  But I don't think either of those methods have to do with DC functions. They are both standard API methods.

                  Is that what you mean?

                  Lately you've been tan, suspicious for the winter.
                  All my Plugins I've written

                  1 Reply Last reply Reply Quote 0
                  • D Offline
                    driven
                    last edited by

                    yep...
                    what else is taken away then???
                    john

                    learn from the mistakes of others, you may not live long enough to make them all yourself...

                    1 Reply Last reply Reply Quote 0
                    • Chris FullmerC Offline
                      Chris Fullmer
                      last edited by

                      I don't think that DC's have any change in functionality or features from SU 8 to 2013.

                      I can't think of any reason why SU Make might act differently than SU Pro in terms of cpu processing. I'll ask around though, maybe someone has an idea. When I get a chance to test the code, I'll test it on both Pro and Make. Thanks everyone,

                      Chris

                      Lately you've been tan, suspicious for the winter.
                      All my Plugins I've written

                      1 Reply Last reply Reply Quote 0
                      • renderizaR Offline
                        renderiza
                        last edited by

                        @anton_s said:

                        I didn't meant it seriously, I just meant it the ironic funny way... Like there were topics like "Does Trimble Listen", or πŸ˜† Or what does Trimble actually listen for? 🀣 But, I do love Trimble, I love the way they upgraded SU2013 to newer window Framework. It was actually what I wanted 😍

                        Understood! πŸ‘ I do like ironic & funny comments a lot its just that sometimes I am little slow with them. 🀣

                        @chris fullmer said:

                        @Anton - yup, we're here listening! Trying to respond as best I can. thanks for pinning down the potential bottlenecks. I'll try to run some tests on them today and see if I can verify that I see the same behavior as you.

                        Chris Fullmer it means a lot that you are not only listening but also joining the conversation. I am very happy we got you as a Trimbler! πŸ‘

                        @driven said:

                        yep...
                        what else is taken away then???
                        john

                        Not very happy to find out that some existing features for SU8 free version are being disabled for Make. 😒

                        Idea should be to limit Make with new never before seen features so that people will be all over Pro version. That way it will not seam like a cheap marketing trick to bring people over to Pro version.

                        There will always be bad apples working for Trimble but I have hopes since we got people like Chris Fullmer trying to do the right thing. πŸ’š

                        Cheers!

                        [url=https://www.sketchupcode.com/:z3kqsidd]My Extensions ...[/url:z3kqsidd]

                        1 Reply Last reply Reply Quote 0
                        • D Offline
                          dacastror
                          last edited by

                          How is configured by default "Sketchup 2013"?
                          I've noticed that changing this setting has strong effects on plugins that provide some kind of animation.
                          In Sketchup 8 an option that works best for me, is as follows

                          preferences.jpg

                          I do not know how it is in 2013

                          (google translate)

                          1 Reply Last reply Reply Quote 0
                          • Chris FullmerC Offline
                            Chris Fullmer
                            last edited by

                            Ok here is the snippet I ran from a multi-line webconsole:

                            model = Sketchup.active_model
                            sel = model.selection
                            gc = sel[0]
                            t = Geom;;Transformation.new([1.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,1.0])
                            puts ""
                            stime = Time.now
                            model.start_operation("no fast", false)
                            100000.times do
                            gc.transform! t#.inverse
                            end
                            model.commit_operation
                            puts "Transform Slow = " + (Time.now-stime).to_s
                            
                            stime = Time.now
                            model.start_operation("fast", true)
                            100000.times do
                            gc.transform! t#.inverse
                            end
                            model.commit_operation
                            puts "Transform Fast = " + (Time.now-stime).to_s
                            
                            
                            stime = Time.now
                            model.start_operation("slow inverse", false)
                            1000000.times do
                            t.inverse
                            end
                            model.commit_operation
                            puts "Invert Transformation = " + (Time.now-stime).to_s
                            
                            
                            stime = Time.now
                            model.start_operation("slow", false)
                            100000.times do
                            gc.transform! t.inverse
                            end
                            model.commit_operation
                            puts "Combined Slow = " + (Time.now-stime).to_s
                            
                            
                            stime = Time.now
                            model.start_operation("fast", true)
                            100000.times do
                            gc.transform! t#.inverse
                            end
                            model.commit_operation
                            puts "Combined Fast = " + (Time.now-stime).to_s
                            

                            Here are the results from 3 rounds of tests:
                            SU 8
                            ` Transform Slow = 7.457
                            Transform Fast = 1.429
                            Invert Transformation = 0.55
                            Combined Slow = 7.442
                            Combined Fast = 1.437

                            Transform Slow = 7.391
                            Transform Fast = 1.446
                            Invert Transformation = 0.555
                            Combined Slow = 7.458
                            Combined Fast = 1.437

                            Transform Slow = 7.43
                            Transform Fast = 1.431
                            Invert Transformation = 0.553
                            Combined Slow = 7.479
                            Combined Fast = 1.456`

                            SU 2013
                            ` Transform Slow = 0.789
                            Transform Fast = 0.42
                            Invert Transformation = 0.529
                            Combined Slow = 0.841
                            Combined Fast = 0.422

                            Transform Slow = 0.779
                            Transform Fast = 0.419
                            Invert Transformation = 0.53
                            Combined Slow = 0.841
                            Combined Fast = 0.419

                            Transform Slow = 0.806
                            Transform Fast = 0.421
                            Invert Transformation = 0.532
                            Combined Slow = 0.834
                            Combined Fast = 0.42`

                            So without the go_faster flag, I'm seeing SU 2013 doing the transformations about 10 times faster than it was in SU 8. Its even going about twice as fast as SU 8 with the go_faster flag.

                            Su 2013 appears to be about three times faster than 8 was when using the go_faster flag.

                            The transformation.inverse does not seem to have changed from SU 8 to 2013. I'm realizing I deleted the test from these results, but I had tested it with and without the go_faster flag and saw no difference. I could update it to do that again if it would help.

                            Does anyone see any holes in these tests? I could easily have overlooked something.

                            Chris

                            Lately you've been tan, suspicious for the winter.
                            All my Plugins I've written

                            1 Reply Last reply Reply Quote 0
                            • A Offline
                              Anton_S
                              last edited by

                              Your amazing Chris πŸ‘
                              Adding model.start_operation('KeyScene', true) when the user clicks the start button and calling model.commit_operation when user clicks the reset button seems to increase performance dramatically!

                              I take all my thoughts back, and do say that Trimble SU2013 is an extreme progression!!!

                              Thank you SketchUp Team!
                              Thank you Trimble!
                              Thank you Chris!

                              1 Reply Last reply Reply Quote 0
                              • renderizaR Offline
                                renderiza
                                last edited by

                                @dacastror said:

                                How is configured by default "Sketchup 2013"?

                                Here is how it looks on SketchUp 2013 Make
                                there.jpg

                                But! If I change that default setting that option is gone and the only way I can get back to it is if I reinstall again which is little weird.
                                not there.jpg

                                @chris fullmer said:

                                Here are the results from 3 rounds of tests:

                                Thanks for does tests its really good to know 2013 is faster giving your results. I am still confused as to way in my game the SketchUp 2013 version runs very slow compared to SketchUp 8.

                                @anton_s said:

                                Adding model.start_operation('KeyScene', true) when the user clicks the start button and calling model.commit_operation when user clicks the reset button seems to increase performance dramatically!

                                Sounds like you made KeyScene work much faster...but was it faster than version 8?

                                Also I am not sure how can I add model.start_operation in Resballiza game to see if it will make it faster. Can you help me in that regards?

                                I am so thankful to all of you great job so far!

                                [url=https://www.sketchupcode.com/:z3kqsidd]My Extensions ...[/url:z3kqsidd]

                                1 Reply Last reply Reply Quote 0
                                • A Offline
                                  Anton_S
                                  last edited by

                                  @renderiza said:

                                  Sounds like you made KeyScene work much faster...but was it faster than version 8?

                                  Yes, it's a little faster on SU2013 than on SU8

                                  @renderiza said:

                                  Also I am not sure how can I add model.start_operation in Resballiza game to see if it will make it faster. Can you help me in that regards?

                                  I sent you a PM with a fixed copy of both KeyScene and Resballiza πŸ‘

                                  1 Reply Last reply Reply Quote 0
                                  • D Offline
                                    driven
                                    last edited by

                                    @Chris,

                                    can you test on mac as well?

                                    my results don't look so great.

                                    EDIT: reformatted to make it clearer...
                                    run on both versions with Sketchup.plugins_disabled? => true then false
                                    simple cube, grouped:

                                    %(#0000FF)[v2013 mac plugins turned off
                                    Transform Slow = 4.051424
                                    Transform Fast = 0.689763
                                    Invert Transformation = 0.682962
                                    Combined Slow = 4.149032
                                    Combined Fast = 0.685753
                                    nil

                                    Sketchup.plugins_disabled?
                                    true

                                    v2013 mac plugins turned on
                                    Transform Slow = 4.684443
                                    Transform Fast = 1.141925
                                    Invert Transformation = 0.87607
                                    Combined Slow = 4.773361
                                    Combined Fast = 1.152288
                                    nil

                                    Sketchup.plugins_disabled?
                                    false]

                                    %(#8000BF)[v8 mac
                                    Transform Slow = 2.187031
                                    Transform Fast = 0.795604
                                    Invert Transformation = 0.809627
                                    Combined Slow = 2.293091
                                    Combined Fast = 0.784819
                                    nil

                                    Sketchup.plugins_disabled?
                                    true

                                    v8 mac
                                    Transform Slow = 2.299228
                                    Transform Fast = 0.805798
                                    Invert Transformation = 0.985101
                                    Combined Slow = 2.456473
                                    Combined Fast = 0.818888
                                    nil

                                    Sketchup.plugins_disabled?
                                    false]
                                    john

                                    learn from the mistakes of others, you may not live long enough to make them all yourself...

                                    1 Reply Last reply Reply Quote 0
                                    • renderizaR Offline
                                      renderiza
                                      last edited by

                                      @anton_s said:

                                      I sent you a PM with a fixed copy of both KeyScene and Resballiza πŸ‘

                                      Magnificent! 😍

                                      Now Resballiza is way faster than before in SketchUp 2013!

                                      SketchUp 8 runs little bit faster still but not by much...I will study ways of optimazing code to make it faster but as is right now it is playable. πŸ’š

                                      Again thanks Anton_S and Chris Fullmer for all the help! πŸ‘

                                      [url=https://www.sketchupcode.com/:z3kqsidd]My Extensions ...[/url:z3kqsidd]

                                      1 Reply Last reply Reply Quote 0
                                      • Chris FullmerC Offline
                                        Chris Fullmer
                                        last edited by

                                        Awesome, glad its improved! Thanks for working that into his code Anton, great!

                                        @John - I have not yet tried it on Mac. I'll see if I get a chance here soon.

                                        Lately you've been tan, suspicious for the winter.
                                        All my Plugins I've written

                                        1 Reply Last reply Reply Quote 0
                                        • A Offline
                                          Anton_S
                                          last edited by

                                          @renderiza said:

                                          SketchUp 8 runs little bit faster still but not by much...I will study ways of optimizing code to make it faster but as is right now it is playable.

                                          Sounds great, I will be the tester πŸ˜„

                                          @chris fullmer said:

                                          Awesome, glad its improved! Thanks for working that into his code Anton, great!

                                          It was interesting, I never actually knew that setting the second parameter of model.start_operation to true would actually improve the performance. That is an important parameter to know, especially when your dealing with geometry plugins.

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

                                          Advertisement