• Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
1
Question by Julien-Lynge · Feb 17, 2014 at 03:38 AM · texturewebplayermovietexture

Web player: Possible to pass native tex ptr to another app?

Is it possible to use GetNativeTexturePtr in the webplayer to get a reference to a texture, and then pass this pointer out of Unity to another web app?

Background:

I'm trying to load a large number of images into a webplayer application - we're talking up to 3000 images at 4096x2048. Trying to load all of those into Unity just doesn't work - it lags the application (since Texture2D operations happen on the main thread), and even DXT compressed it's gigs of memory.

There are potential solutions: stream the images as needed from the backend as jpgs and use unmanaged code to overwrite the texture memory without hiccuping Unity, or use a video, for instance. Of course, unmanaged code isn't allowed with the webplayer security model, and MovieTextures are broken (can't rewind, can't seek, duration returns -1 until you play, can't change speed, etc.).

Question in more detail:

The only solution I can see is to try and use both Unity and another app - maybe Silverlight, which theoretically allows unmanaged code. If I can somehow get a pointer to a unity texture on the GPU in that other app, then it can manage the images / video and overwrite the texture without hiccuping Unity.

Is what I'm describing possible? I've only seen one discussion of it (http://stackoverflow.com/questions/19703807/how-to-send-native-texture-ptr-from-unity-web-player-to-a-browser-plug-in), however it sounds like I may not be able to use a pointer from the web player in another app. I'm not honestly familiar enough with unmanaged code and texture pointers to know what to try and what's just not possible. What about Texture2D.CreateExternalTexture - any possibilities there?

Alternatively, any thoughts on ways to work within Unity to make this happen? I only actually need one texture displayed at any time, but I need to be able to scrub forward and back through them at 60 fps. Unfortunately, loading a 4096x2048 texture stutters Unity - I haven't found a way around it.

Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

0 Replies

· Add your reply
  • Sort: 

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Welcome to Unity Answers

If you’re new to Unity Answers, please check our User Guide to help you navigate through our website and refer to our FAQ for more information.

Before posting, make sure to check out our Knowledge Base for commonly asked Unity questions.

Check our Moderator Guidelines if you’re a new moderator and want to work together in an effort to improve Unity Answers and support our users.

Follow this Question

Answers Answers and Comments

18 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

[SOLVED]my original texture change to movie texture 0 Answers

Using Video in a 4.6 UI 0 Answers

Play specific frames of your movieTexture 1 Answer

ChromaKey MovieTexture 2 Answers

www.movie not playing? 1 Answer


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges