@donmccurdy@fosstodon.org avatar

donmccurdy

@donmccurdy@fosstodon.org

Graphics, data visualization, and web technologies at CARTO. Previously NYTimes R&D and Google. Contributor to #glTF, #threejs, and #aframevr. he/him.

This profile is from a federated server and may be incomplete. Browse more on the original instance.

donmccurdy, to random
@donmccurdy@fosstodon.org avatar

Picked up a cheap plastic film camera (Kodak H35) in January, just had the first roll of film developed and, OK, yeah.

image/jpeg
image/jpeg

donmccurdy, to threejs
@donmccurdy@fosstodon.org avatar

Just updated https://gltf.report to three.js r164 and glTF Transform v4. The example script is now almost identical to gltf-transform optimize presets, and includes: gpu instancing, palette texture creation, mesh joining, simplification, keyframe resampling, and more.

donmccurdy, to random
@donmccurdy@fosstodon.org avatar

Switched my hard drive backups from Backblaze to Arq. Mainly needed to get away from Backblaze's not-great external HDD deletion policy.

Very happy with Arq so far! Your choice of a full-managed subscription service, or one-time payment and self-hosted backups. Setting up backups to Google Cloud Storage was practically automatic.

https://arqbackup.com/

tojiro, to random
@tojiro@mastodon.social avatar

Ooh! Looks like PDF 2.0 is going to support glTF as one of it's 3D formats!

https://pdfa.org/pdf-2-0-adds-gltf-model-support/

donmccurdy,
@donmccurdy@fosstodon.org avatar

@tojiro I was ... unprepared … to find not one but four (!) 3D formats supported in PDF 🤯

donmccurdy, to gamedev
@donmccurdy@fosstodon.org avatar

Request for Proposal (RFP) from @thekhronosgroup — Implement OpenXR for @godotengine.

https://www.khronos.org/rfp/godot-integration

luis_in_brief, to random
@luis_in_brief@social.coop avatar

Gotta admit I found it pretty irritating, in the xz discussion of the last two weeks, that some people declared confidently "you can't pay maintainers". (cc @ehashman)

It isn't easy to pay maintainers, but it can be done: at Tidelift, we've been doing it for years. So I figured I'd write up how we do it and what we've learned. And yes, it's a HOWTO. Be glad I also avoided an FAQ ;)

https://blog.tidelift.com/paying-maintainers-the-howto

donmccurdy,
@donmccurdy@fosstodon.org avatar

@luis_in_brief best phrasing I've heard yet for this question, thank you!

kepano, to random
@kepano@mastodon.social avatar

this is the system I use to I track cost per use for posts using

I use properties to track the price, purchase date of the product, and estimate the number of uses per month — everything else is formulas, you can see how it works in my vault template

image/png

donmccurdy,
@donmccurdy@fosstodon.org avatar

@kepano if you don't mind, what allows the table to be shown full-bleed here?

donmccurdy, to threejs
@donmccurdy@fosstodon.org avatar
donmccurdy, to random
@donmccurdy@fosstodon.org avatar

Updates on WebGL, WebGPU, glTF, USD, and MaterialX from the March @thekhronosgroup meetup —

https://www.youtube.com/watch?v=bxsQMlymLEw

donmccurdy,
@donmccurdy@fosstodon.org avatar

2024 roadmap for glTF:

  • Interactivity
  • Physics
  • External .gltf references
  • Procedural textures
  • PBR subsurface scattering
  • Animation improvements
donmccurdy,
@donmccurdy@fosstodon.org avatar

I'm excited for a MaterialX + glTF integration, supporting procedural textures! Gives many of the benefits of custom shaders, but portable across renderers and graphics APIs.

three.js already supports MaterialX, and being able to use those materials in glTF models makes perfect sense:

https://threejs.org/examples/?q=materialx#webgpu_materialx_noise

image/png

donmccurdy, to random
@donmccurdy@fosstodon.org avatar

On Redis moving to Server Side Public License (SSPL): the main failure I see here is a lack of comparable and accepted copyleft licenses, evolving to match the problem.

That’s an open source community problem, not a Redis problem.

donmccurdy,
@donmccurdy@fosstodon.org avatar

@luis_in_brief Thanks Luis! I'm very grateful for your opinion on this, and for your work at Blue Oak Council and Tidelift. 🙏

We agree that these companies don't see much value in contributions back, and that the change to SSPL is primarily to support/protect their funding models. Surely both are commonly true of copyleft adoption, too?

donmccurdy,
@donmccurdy@fosstodon.org avatar

@luis_in_brief I just can't make the step from there to the general criticism of SSPL, though…. Funding an open source database with paid hosting runs into [major problem]; these companies are staying as close to copyleft as they safely can while protecting themselves from [major problem].

donmccurdy,
@donmccurdy@fosstodon.org avatar

@luis_in_brief I realize this is a large question — so I understand if you'd rather not comment! — but ... do you feel these projects had a better alternative?

I'm not sure I do. Plenty of things can absolutely be built on maximal copyleft, but the odds appear steeply against middleware/databases aiming to sustain a healthy project on shared modifications alone.

donmccurdy, to random
@donmccurdy@fosstodon.org avatar

Don't use Data URLs in 3D Models. My thoughts on the “glTF Embedded” option in Blender, compared to the better ways of packaging .gltf/.glb files.

https://www.donmccurdy.com/2024/03/10/data-urls-in-3d-models/

donmccurdy, to random
@donmccurdy@fosstodon.org avatar

Open Source Initiative (OSI) formally approved the Blue Oak License last month! Glad to see this.

https://opensource.org/license/blue-oak-model-license

donmccurdy,
@donmccurdy@fosstodon.org avatar

Some reasons you might choose Blue Oak over, say, the MIT License:

  1. https://blueoakcouncil.org/2019/03/06/model.html
  2. https://writing.kemitchell.com/2019/03/09/Deprecation-Notice.html

But maybe just as important, the authors are doing valuable work for open source communities (not just this license), and I’m happy for the growing traction.

donmccurdy,
@donmccurdy@fosstodon.org avatar

@flameeyes I believe OSI’s approval as a "permissive” or "notice" license is a very strong signal for the largest tech employers — probably even some overlap in the lawyers involved. So, hopefully this resolves most issues! I'm sure it will take some time to trickle through the license-check processes though.

donmccurdy, to threejs
@donmccurdy@fosstodon.org avatar

I've been meaning to start writing up blog posts based on responses to common questions in three.js Slack/Discord/Forums, so here's a start — an introduction to image formats in used in WebGL and WebGPU applications, including WebP, AVIF, and KTX2.

https://www.donmccurdy.com/2024/02/11/web-texture-formats/

donmccurdy,
@donmccurdy@fosstodon.org avatar

@castano Hi Ignacio, Spark sounds very exciting to try, thank you!

WebGL 2 or WebGPU support would probably be required for me to be much help in evaluating or recommending Spark, but I’d love to learn more then!

tojiro, to random
@tojiro@mastodon.social avatar

Note to self: Next time you get it into your head to update the Three.js version one of your pages is running on, try to do it before you're 50 releases out of date. 😭

donmccurdy,
@donmccurdy@fosstodon.org avatar

@tojiro @Jespertheend my apologies for the color space portion of that pain! happy to have a look too. 😅

donmccurdy,
@donmccurdy@fosstodon.org avatar

@tojiro hmm, more difference than I would've expected on this one!

donmccurdy, to random
@donmccurdy@fosstodon.org avatar

Today I learned: Browsers cache resources on CDNs separately for each site that accesses them. The cache isn’t shared across sites, hasn’t been since 2021.

https://www.stefanjudis.com/notes/say-goodbye-to-resource-caching-across-sites-and-domains/

donmccurdy, to random
@donmccurdy@fosstodon.org avatar

“Integer math in Javascript.” Excellent short post, and really saved me on some optimization work recently.

https://james.darpinian.com/blog/integer-math-in-javascript

donmccurdy,
@donmccurdy@fosstodon.org avatar

@ada @tojiro here's where it ended up:

https://github.com/donmccurdy/glTF-Transform/blob/5a5a9447aa6a6a4e5ce5827c7a75666fb2e904dc/packages/functions/src/weld.ts#L477-L499

It's much faster than my previous implementation for merging /welding vertices. That's not based on the speed of the arithmetic though, it's that using Murmur Hash is just a smarter approach (borrowed from Meshoptimizer) than I had before, and I couldn't have implemented the hasher without integer math.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • InstantRegret
  • magazineikmin
  • thenastyranch
  • modclub
  • everett
  • rosin
  • Youngstown
  • slotface
  • ethstaker
  • mdbf
  • kavyap
  • osvaldo12
  • DreamBathrooms
  • anitta
  • Durango
  • ngwrru68w68
  • tester
  • khanakhh
  • love
  • tacticalgear
  • cubers
  • GTA5RPClips
  • Leos
  • normalnudes
  • provamag3
  • cisconetworking
  • JUstTest
  • All magazines