jessp / holo-assistant

DIY pseudo-holographic virtual assistant
https://maria.awardwinninghuman.com
MIT License
93 stars 6 forks source link

Use display for SEPIA avatar? #16

Closed fquirin closed 2 years ago

fquirin commented 2 years ago

Hi @jessp ,

this looks like a very cool project 😎 👍 .

Not an issue really but a question. I'm developing an open-source voice assistant as well (SEPIA) and I was wondering if the display might work with the SEPIA avatar (always-on mode) as well 🤔 . As far as I understand the construction you simply need the animation on a black background right?

Here is a test link to demonstrate one of the SEPIA avatars: https://sepia-framework.github.io/app/index.html?skinId=41&view=aomode (simply click on the little arrow on the bottom of the login box and then "offline test mode" to jump right into the avatar view). Do you think this could work? 🙂

jessp commented 2 years ago

Sorry for the super late reply. I took a little break from working on it. Great work on SEPIA, and stellar name.

Technically, the pseudoholographic technique I use could be used with the SEPIA avatar(s), though the work required might be overkill. Basically, it's an OPENGL shader that uses a distortion map. Probably easier to adapt just the shader stuff to your own set-up (which is what I did, too) as 99% of the other code I have here would be irrelevant to you.

SEPIA seems to be a 2D avatar, which is still chill for OpenGL/WebGL shaders, though you'd maybe want to or need to switch up your rendering library/ies to be able to run shaders on it.

Bit of a lame answer, but maybe that sets you in a nice direction after a long pause.

fquirin commented 2 years ago

Thanks for the info 🙂 👍 , I didn't realize there was a distortion step involved. You have to distort the image to account for the cylindrical shape I assume?

Currently SEPIA avatars are pure CSS (and some SVGs depending on the skin), but I thought about extending it to support 3D rendering etc. 🤔. I guess I have one more argument to look into it now ^^