Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 Jun 22
sparklines
Close Help
  • 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 GraemeJudkins · Dec 20, 2018 at 08:07 PM · vrgraphicstexturesmultithreadingvolumetric

Multithreaded rendering of large volumes using texture3d.apply()

We are building 3D volumes of large stacks of 2D images and using Texture3D to render them as a volume in VR. Our images are typically 512x512 and we have many stacks sometimes of many hundreds of images long, which can be GB of data. We can load them in the CPU, but when we use .Apply(), it hangs unity for sometimes 3-10 seconds. I know it's not recommended to do this, but we need to use texture3Ds unless there is a suitable alternative that has the same effect. We have tried breaking them up into seperate volumes (3-14 seperate volumes) and it does reduce the lengths of the hangs individually, it makes the frame rate unacceptably low.

As we understand it, Texture3D.Apply() takes the images loaded into the CPU, and pumps them into the GPU to render them, but the time it takes to send it to the GPU is far longer than a frame period and obviously the function is unable to be multithreaded because it's unity.

We need to use volumes and we need it to not freeze the program.

What are our options?

Comment
Add comment · Show 2
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
avatar image hexagonius · Dec 20, 2018 at 08:18 PM 1
Share

I guess either buying the Unity source code, or using a different game engine, unless some guru passes by and says otherwise.
I've searched a lot to get something about this topic.
just found this one here:
https://forum.unity.com/threads/asynchronous-texture-upload-and-downloadhandlertexture.562303/
the one thing I can think of is loading the 3DTexture to VRA$$anonymous$$ outside of unity and then pass it the native texture pointer, but I don't know if that can be done and how to do it, it just makes sense to me

avatar image GraemeJudkins hexagonius · Dec 20, 2018 at 09:17 PM 0
Share

Hi! thanks for the response! do you know much about buying the unity source code? would we get access to the classes and functions that contain the texture3D methods? I'm bumping that thread and im going to look into passing the native texture pointer into unity somehow.

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.

Follow this Question

Answers Answers and Comments

138 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 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 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 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 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 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 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 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

Volume absorption area 1 Answer

Strange Rendering Error: White Fog? 0 Answers

Excluding UI sprites from QualitySettings.masterTextureLimit 1 Answer

GLES3 Error: Post Processing 0 Answers

Black graphical errors appearing on textures 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