The forum on this site is closed for new comments and posts. Continue the conversation in our Snap AR Discord server.

how to allow user to move and scale 2d object

  • hi Merrick Brown

    have a look at the guide of Manipulation
    if you need any clarification please let us know

    Cheers.

    Comment actions Permalink
  • Hey @...

    This can easily be done by using "Manipulation". "Mohamed Ouahbi has sent you a link , there is a very good tutorial :D

     

    Cheers,

    SirQu3ntin

    Comment actions Permalink
  • thanks for the reply. this nice, but i am still having trouble moving the object up and down. i don't want it to move forward and backward in the scene. i simple want it to be able to move and be scaled on a 2d plane. it should basically function as an instagram sticker. this must be possible? thanks again for the help.

    Comment actions Permalink
  • Hey! Exactly a year later and I have discovered this thread, trying to do the same thing. I'm a little surprised that there's no event for 2D pinch gestures. It could be something like this: 

    script.createEvent('PinchEvent').bind(function(){})

    But instead we are forced into using the manipulate component. I have something half working with a screen image component and a manipulate component. The drag doesn't really work for 2D, like Merrick said. I'm only half way through this, but my approach is to use the scale from the manipulate component, and the touch move from a script event. 

    //@input Asset.Material mat
    //@input Component.ManipulateComponent scaler
    script.createEvent('TouchMoveEvent').bind(function(e){
    var pos = e.getTouchPosition()
    script.mat.mainPass.center_x = pos.x
    script.mat.mainPass.center_y = 1 - pos.y
    })

    script.createEvent('UpdateEvent').bind(function(){
    var screenTransform = script.scaler.getSceneObject().getComponent("Component.ScreenTransform")
    script.mat.mainPass.size = screenTransform.scale.x
    })

    Then I guess I'll need to write a bit more script to make sure the position and scale of the screen image will match the bounding box of the 2D element I want to manipulate.

    If there's a better way, I'd love to hear it! This approach is a huge pain for something that should be such a simple interaction.

    In general, I wouldn't mind using the manipulate component if the drag position worked on screen transforms. For some reason the screen transform position is in 3d space? And only the x value moves on drag? Very strange...

    Comment actions Permalink
  • Comment actions Permalink
  • I eventually found this wonderful thing in the asset library - Manipulate Image

    Comment actions Permalink

We're here to help! We just need a little bit of information...

What system are you using?

Have you downloaded the latest version of Lens Studio?

Please download the latest version of Lens Studio. If you still run into this issue, please come back and report it!

Is this issue causing Lens Studio to crash?

What system do you run Lens Studio on?

Version

Graphics

Follow the next steps to help us solve your issue:

  • Copy and paste this text into your TerminalCommand Window
    open ~/Library/Preferences/Snap/Lens\ Studio/ %LOCALAPPDATA%\Snap\Lens Studio Copy Text
  • Press ReturnEnter to run the command. The Lens Studio folder will automatically open
  • Prepare to upload your files: zip the "Log" Folder by right-clicking and choosing "compress."
    Locate the Log.txt file right above it.

    Attach a screenshot of the issue:

Name:

Email:

What is this most relevant to?

Please enter a brief description of your issue:

Thanks for submitting this issue.

Unfortunately, it's likely due to the operating system or hardware you're using – since they don't meet the system requirements for Lens Studio.

Still, we hear you loud and clear, and are logging the issue in case there's ever a workaround we can provide!

Minimum Requirements

Operating System: Windows 10 (64 bit); MacOS 10.11+

Hardware: Minimum of Intel Core i3 2.5Ghz or AMD Phenom II 2.6Ghz with 4 GB RAM; Intel HD Graphics 4000 / Nvidia GeForce 710 / AMD Radeon HD 6450 or better; screen resolution of 1280x768 or higher

We'll try to resolve this issue as soon as possible. Thanks for letting us know about it!

Keep an eye out for a followup email from us. We may have a couple more questions for you, or we might already have a solution to offer.

Happy creating!