6 ms·
Money was never the end goal – mrdoob – threejs creator
- Theodores 2y agoRecently I wanted to make a rotating 3D pyramid for illustration but without loading a 3D library. I thought how hard can it be in SVG? Very. Backface culling, a lighting model, a little bit of trigonometry, new CSS color model features and much else took more than two minutes. The result does not have true perspective but looks okay-ish. This experiment and the trifles made me appreciate three.js so much more! Props to the creator.
- fallingsquirrel 2y agoFun fact: three.js has an SVG renderer! https://threejs.org/docs/#examples/en/renderers/SVGRenderer https://threejs.org/docs/#examples/en/renderers/SVGRenderer Maybe you could have created the pyramid in 3D and rendered it ahead of time to SVG, so you could end up with a perfect perspective projection.
- itronitron 2y agoDid your approach require JS or were you able to do the rotating part completely in CSS and SVG?
- _ache_ 2y agoIt's possible to have simple animation only in SVG but you can add CSS to have complex ones.
- Theodores 2y agoNow you are teasing me. I did use javascript because of sins and cosines. I think, now I have something, I need to step up to do it entirely in CSS. Another day will be wasted on that... The pyramid also has layers and an initial routine where the layers get added, with a carousel made from details/summary elements to describe the layers. Clicking on the layers opens the respective details/summary and the colour changes. The shading of the pyramid was particularly hard, since that changes as it rotates. I will have to do that in CSS too...
- tomashubelbauer 2y agoI did something similar! Used the `animate` element to move some lines around. A fun project from a few years back: https://github.com/TomasHubelbauer/svg-3d https://github.com/TomasHubelbauer/svg-3d
- mikojan 2y agohttps://archive.is/zWo9P https://archive.is/zWo9P
- mrbluecoat 2y agoA rare gem in our profit-driven world. Reminded me of https://sive.rs/ayw4 https://sive.rs/ayw4
- toddmorey 2y agoIn open source we've carved a huge hole in the middle of our ecosystems where projects go to die specifically because of our instance that everything is free or its creator is a greedy capitalist. Most all of the open source maintainers I know would LOVE to work on their projects full-time for a modest wage. But developers, teams, and companies have no interest or mechanisms to support that model... which is why VCs swept in to try to corrupt open source into a twisted product lead growth strategy. Sorry to rant. I'm so glad mrdoob could do all this amazing work without needing revenue from it. I just get bristly at anyone who claims maintainers wanting to focus on their passions are "profit-driven".
- gr4vityWall 2y ago> which is why VCs swept in to try to corrupt open source into a twisted product lead growth strategy I wouldn't call it 'corrupt', but rather a by-design "feature" of open-source: https://www.gnu.org/philosophy/open-source-misses-the-point.en.html https://www.gnu.org/philosophy/open-source-misses-the-point.... > I just get bristly at anyone who claims maintainers wanting to focus on their passions are "profit-driven" The person you replied to never said that.
- nox101 2y agoHe claims money wasn't the motive and I'm sure that's true but I thought he was a for hire website creator of the type that had a website with fancy demos to adversize his skills and therefore get clients. So, while three might have been a fun hobby project it was also something he used to make client sites or at least lure clients. Then, as three got popular he got lucky and google hired him full time to maintain it. Who knows where it would be without a corporate sponsor to fund it fulltime. it's unlikely he'd have been able to keep it going so long if he needed to spend all is time on other things to earn a living. In other words, he is getting revenue from it. In fact on a google salary he's getting quite large revenue from in and he also takes donations in top of his $500k+ salary. https://github.com/sponsors/mrdoob https://github.com/sponsors/mrdoob Super happy for him and super jealous. Wouldn't we all like a high paying corporate sponsor for our personal project
- bsenftner 2y agoPeople have no idea the amount of effort it requires to make 3D anything, and then at the quality level they frequently see 3D things in media. Then there's the different types of ways to do 3D, from scanline to polygons to rays to volumes and then abandon all that for splats; likewise with color models where RGB gets replaced with RGBA and then sRGB/CMYK and others, and now physically based rendering has a whole other color model with different names and formulas. I've not even mentioned the differences between software rendering and hardware accelerated rendering, nor distributed cluster farm rendering as used in film and commercial productions. It's multiple full time Phd level careers, and most people think it's easy and they could do all of it if given the opportunity.
- smolder 2y agoI've forgotten most of the specific matrix multiplication stuff I needed to know to write a ray tracer, and my ray tracer was dog slow compared to pixar's renderman. I wouldn't say it takes multiple PhD careers, though. It was discrete math and a couple upper level CS undergrad courses to get to a working ray tracer, write interesting shaders, and do stuff like fourier transforms of audio on a gpu.
- spookie 2y agoTo get to a working raytracer, yes. But, take a game, or a movie. One needs render things very efficiently in a game, you have 33.3ms of frame budget. Today, raytracing in games either uses just 1 or 2 techniques (e.g. shadows) and calls it a day. If you want to do more, you probably need some help with machine learning (think DLSS). Not to mention, you need a system that accelerates the structures needed to perform it, and somehow marry all this with everything else in game that uses the GPU. You get animations into the mix and the complexity goes up in all areas. In movies, you have more leeway, but the artists still need to iterate fast. You want them to be able to see something akin to the final product fast. It intersects a lot of areas.
- hombre_fatal 2y agoWriting a slow incomplete impl of something is 0.1% of the progress of building an actual one that you would use in production.
- rwbt 2y agoIf I recall correctly mrdoob used to be (or still is?) employed by Google. I'm sure this is his passion project. Even the Box2D library is written and maintained by one person as a passion project who happens to also have a successful tech job.
- timmg 2y agoThree.js is (or at least was) what Google pays him to do. Works out great for everyone, IMHO.
- deleted 2y ago[deleted]
- cloudking 2y agoWonderful project. Built video games and music visualizers that I never thought were possible on web.
- slmjkdbtl 2y agoMoney not being the goal is the norm for these good projects, I hope one day to find out for my favorite project money is actually the end goal, that'll be fresh.
- brap 2y agoI mean, it’s literally his job at Google?
- deleted 2y ago[deleted]
- andrewmcwatters 2y agoAlmost all open source, including some of the most prominent open source projects you can think of, do not make enough revenue to fund the full-time employment of one principal engineer. Most of them would be grateful for a $12 donation. Why do I use $12 as a benchmark? If you paid a single open source project $1 a month, you could fund their VPS hosting for year by paying $12. If you paid $24, you could pay their domain lease and VPS hosting as a single benefactor. Think of some of the most underfunded, most used open source projects you use on a daily basis, and please consider donating what you surely spend less on coffee in a month at least one time a year. I'm not talking about open source projects that have their own foundation, or limited private company. I'm talking about the random open source contributor whose project you love and use daily who is just an individual. Maybe they don't even get enough attention on GitHub but they're in all honesty publishing something that people (you!) want. I've published open source projects for 15 years, almost a majority of them now are discontinued or archived, but the ones that are still maintained have been for over a decade. And I have had the opportunity to have my work shared with many people, others are not so fortunate. It's nearly a full-time job to market them, and mrdoob is right, you end up sacrificing a lot to publish these things.
- hnisoss 2y agowhere could one find VPS for $12 a year?
- andrewmcwatters 2y agohttps://my.racknerd.com/cart.php?a=confproduct&i=0&aff=2502 https://my.racknerd.com/cart.php?a=confproduct&i=0&aff=2502 > 1 GB KVM VPS (2024's 11.11 Promo) > 1x vCPU Core > 14 GB PURE SSD RAID-10 Storage > 1 GB RAM > 2000GB Monthly Premium Bandwidth > 1Gbps Public Network Port > Full Root Admin Access > 1 Dedicated IPv4 Address > KVM / SolusVM Control Panel - Reboot, Reinstall, Manage rDNS, & much more > Available in San Jose, Seattle, Dallas, Chicago, New York, and Atlanta Source: LowEndBox. I own a software business that uses RackNerd as a downstream provider. We use their VPSs for a majority of our clients who have low traffic requirements.
- rumori 2y agoBefore Three.js there was Papervision3D for Flash written in ActionScript. While it was not a direct port I imagine a lot of ideas were already established and pretty straightforward to implement in Javascript. Happy to see Three.js going strong.
- nuc1e0n 2y agoI think this is true of a lot of projects. Making nice tools to work with serves a more fundamental need than money does. You could say that money is just a means to get nice tools. Open source software can be duplicated or amended by anyone as much as they want so theft or shortages of it isn't an issue.