It is currently October 3rd, 2023, 5:43 pm

Hologram

Media controls, music players, video and animated visualizers
User avatar
eclectic-tech
Rainmeter Sage
Posts: 5186
Joined: April 12th, 2012, 9:40 pm
Location: Cedar Point, Ohio, USA

Re: Hologram

Post by eclectic-tech »

Elmo-faint.gif
:17good WOW! Amazing Work! Thanks! :17good
You do not have the required permissions to view the files attached to this post.
User avatar
Yincognito
Rainmeter Sage
Posts: 6073
Joined: February 27th, 2015, 2:38 pm
Location: Terra Yincognita

Re: Hologram

Post by Yincognito »

killall-q wrote: December 1st, 2022, 8:01 pmI've overhauled Hologram with a new rendering method, using a shape meter to draw an arbitrary number of triangles. See the edited original post for comparisons between the original point cloud renderer and the new wireframe renderer.
Great work! :thumbup:

I just discovered this today and instantly wondered if the approach can't be applied to my 3D Earth skin, as it would probably simplify both the interaction and get rid of most of the required dependencies. As far as I could understand, the STL format doesn't do colors, so do you think other formats like, say, GLTF, may be suitable to be used in your skin at some point? Since they're basically JSON, they should be easier to parse.

As for the skin itself, its performance is comparable with the one I get in my skin above, at around 5.5% of my CPU with my main skin suite (also animated) running too and Hardware Acceleration enabled in Rainmeter (it rises to around 7.5% with HA disabled in Rainmeter).

P.S. A small bug exists when the skin area is less than the extent of your Settings area: if moving the mouse over a Settings area outside of the skin one, the former is hidden. This prevents the user from changing a setting if that is outside the skin rectangle due to zooming.

EDIT: I just realized that colors might be unavailable in the implementation also because a single Shape meter can't be multicolored.
EDIT2: Realized that the Shape meter is simply drawing the overlapping 2D projection of the 3D points and fills between them, so I guess what I hoped for is not in the cards, let alone drawing or projecting images in such meters as it would be the case when parsing a GLTF model. Too bad...
Profiles: Rainmeter ProfileDeviantArt ProfileSuites: MYiniMeterSkins: Earth
User avatar
Yincognito
Rainmeter Sage
Posts: 6073
Joined: February 27th, 2015, 2:38 pm
Location: Terra Yincognita

Re: Hologram

Post by Yincognito »

dgrace wrote: February 16th, 2016, 2:38 amLet me know when you get something that looks good and I'll bet I can rewrite it as a custom D3DMeter that will run about 10000x faster. ;)
dgrace wrote: February 16th, 2016, 11:49 pmWhat if you had a custom plugin that would render the 3d to a .png? Then you could pipe it to an image meter.
Betting and what ifs look so good on paper, but unfortunately, in practice, a "Shape3D" plugin for Rainmeter or something similar would be an awesome but difficult dream to accomplish, probably involving some Unity-like libraries and other performance considerations. So far, browsers seem to handle 3D reasonably well via WebGL, at the cost of creating additional dependencies like WebView2 and a suited plugin, NodeJS, or ThreeJS when integrating things into a Rainmeter skin.
Profiles: Rainmeter ProfileDeviantArt ProfileSuites: MYiniMeterSkins: Earth
User avatar
killall-q
Posts: 305
Joined: August 14th, 2009, 8:04 am

Re: Hologram

Post by killall-q »

Yincognito wrote: April 4th, 2023, 2:04 amBetting and what ifs look so good on paper, but unfortunately, in practice, a "Shape3D" plugin for Rainmeter or something similar would be an awesome but difficult dream to accomplish, probably involving some Unity-like libraries and other performance considerations. So far, browsers seem to handle 3D reasonably well via WebGL, at the cost of creating additional dependencies like WebView2 and a suited plugin, NodeJS, or ThreeJS when integrating things into a Rainmeter skin.
Rainmeter already uses Direct2D, so I wonder if it wouldn't be too much of a stretch to implement a Direct3D meter. But how monstrous would the options to control such a meter be? And would it be worth the devs' effort to implement? While it would allow true interactive 3D HUDs à la Iron Man, few skin authors would have the skill and perseverance to utilize such a powerful feature to its fullest potential.
User avatar
Yincognito
Rainmeter Sage
Posts: 6073
Joined: February 27th, 2015, 2:38 pm
Location: Terra Yincognita

Re: Hologram

Post by Yincognito »

killall-q wrote: April 4th, 2023, 3:45 am Rainmeter already uses Direct2D, so I wonder if it wouldn't be too much of a stretch to implement a Direct3D meter. But how monstrous would the options to control such a meter be? And would it be worth the devs' effort to implement? While it would allow true interactive 3D HUDs à la Iron Man, few skin authors would have the skill and perseverance to utilize such a powerful feature to its fullest potential.
Indeed. The amount of such options would probably be needed because a meter like this would have to be the equivalent of an entire "scene", as opposed to a single "object", since meters in Rainmeter are simply 2D containers that can't be manipulated in 3D space. I always consider that the effort is worthwhile if you really want to achieve an objective, the problem is to minimize that effort as much as possible while still keeping the outcome feasible, which would be very difficult in this case. I wouldn't worry about folks' skill and perseverance, the potentially awesome result would no doubt constitute a proper motivation for that (complex but good looking visualizers are a good example of that, on a smaller scale).

So far, WebView2 and its plugin for Rainmeter are a good option for 3D meters, the problem is that they come with several dependencies, and some of those dependencies also have dependencies and requirements of their own. Simplifying the process in that regard would be nice, since the browser (MS Edge, in this case) takes care of the rest quite well.
Profiles: Rainmeter ProfileDeviantArt ProfileSuites: MYiniMeterSkins: Earth