5 ms·
More than that, I think it's important to remember that no one, even a technologist as strong as Carmack, is going to get more right than wrong. Carmack has be
by jasonwatkinspdx 4y ago
More than that, I think it's important to remember that no one, even a technologist as strong as Carmack, is going to get more right than wrong.
Carmack has been a huge inspiration for me over the years. I grew up eagerly reading his plan files.
But if we look at the big picture, a lot of his big calls haven't in fact worked out.
His vision for the future of graphics was to stick closer to the original OpenGL state machine, and just make it so blazing fast you could do complex lighting and materials via accumulating 100's of passes per frame. The world chose shaders instead, and I don't think they got that wrong.
Stencil buffer shadows were a dead end.
iD tech used to set the standard for the entire industry, but long term its totally lost out to Unreal and Unity.
Carmack's ideas around sparse voxel trees were really interesting to me at the time, but now with hindsight I can see he totally misunderstood what artists want/need. They don't want to uniquely paint every bit of the game world, they want tools that let them use instancing and smart materials/shapes. In comparison Unreal's Nanite gets this totally right. Artist productivity is the key constraint in both film and games.
I don't say this to be pointlessly negative. As I said JC is one of my personal heros. But the problem with the "superman" approach to coding is no one is in fact superman, even someone like JC. It's just not possible to get complex calls like this right long term. If you don't pay that some respect in your interpersonal behavior, you are gonna end up alienating people.
- osigurdson 4y agoIs it possibly because he lacks the academic rigour? I don't think casually reading math (or any) texts as a $50M+ net worth individual is remotely the same as having to study and pass tests like a regular person.
- cudgy 4y agoFormal training can be a disadvantage when innovating, since it trains one to think the same as others.
- jasonwatkinspdx 4y agoI'm an autodidact and that's something I definitely struggle with. I'm good at getting the "gist" of something by scanning fast, but then I get hung up in the details because I didn't go back and actually work through the formalisms in the paper. JC strikes me as someone that would do the math however, or at least would code up something that probed it real quick. Just to ramble about another point I wish I'd made in my post above: I've had some success in my career by depersonalizing these kind of debates. Instead of "my plan" vs "your plan" try to frame it as everyone enumerating the possible plans as a group, brainstorming on benefits vs risks on each of them, etc. So if I set myself up as facilitator on the white board aggregating everything, without pushing my own view much, I find it tends to get less into back and forth arguments. Not a silver bullet but that depersonalization is a big part of how I think about these dilemmas now.
- osigurdson 4y agoAgree. I’ve been on both sides of this. Forced to learn things as a student as well as rushing through self curated material for a particular purpose. There is definitely some value in simply being a student. Spending 8 years studying to get a phd in math doesn’t guarantee that you will be an outlier (like Carmack) but you will have a solid foundation. I think both types of people are needed to make progress realistically.
- 1auralynn 4y agoYou know, maybe he just has a huge blind spot when it comes to optimization: Because he's so good at it, he overestimates others' ability (and possibly appetite for - I personally find optimization grueling and soul deadening work though of course needs to be done)
- Strom 4y ago> iD tech used to set the standard for the entire industry, but long term its totally lost out to Unreal and Unity. Unless you fault Carmack for selling id to Bethesda, this isn't so much Carmack's fault. He always proposed more sharing of id tech. Look at the older versions of the engine that are available under GPL. Unreal really took over when they started their cheap licensing with source available. Bethesda was asleep.
- jasonwatkinspdx 4y agoiD tech was already floundering before the acquisition. I obviously don't fault JC for taking the bag. Unreal was always far cheaper and way better supported than iD tech. This is something iD got very wrong from the very beginning. iD was "give us 500k, here's a cd rom, and never talk to us again." Epic was considerably less (I forget exactly but I want to say 100k), and was all "ok, here's the email list, here's the news group, here's the IRC channel, and here's some folks you can talk to when you get stuck." All the Unreal licenses collaborated and helped each other underneath Epic's umbrella. iD licensees had to do again working around iD's hostility/apathy. There was no comparison in the quality of the toolchains either. Quake's kit did the job, but with a ton of flaky behavior and horrible UX. The BSP code had so many numerical issues level designers were constantly reworking stuff to prevent leaks. Unreal was an absolute dream in comparison. Cliffy B sending you unsolicited porn pics over IRC was more of a "perk." /s Source: was contracted on an Unreal port to the Playstation 1 by Infogrames back in the day. Again, JC is one of my personal heroes, but I think people are reluctant to point out he got a lot of stuff just wrong vs choices others made. His tendency towards contrarian independence is a double edged sword.
- hajile 4y ago> Carmack's ideas around sparse voxel trees were really interesting to me at the time, but now with hindsight I can see he totally misunderstood what artists want/need. They don't want to uniquely paint every bit of the game world, they want tools that let them use instancing and smart materials/shapes. In comparison Unreal's Nanite gets this totally right. Artist productivity is the key constraint in both film and games. Aren't voxels and instances/shapes orthogonal? Do artists really care if the shapes are textures or pictures wrapped on triangles or pictures wrapped on voxels? The real argument for Voxels is analogous to the argument for raytracing. It is more accurate at describing how the world works, but we currently don't have the computational power to do it in anything close to realtime in advanced games -- even with lots of optimizations.
- kevingadd 4y agoIf you have a single world representation made out of voxels, you can't trivially edit instanced objects and have the changes propagate out to the whole world where all the instances were. Or if you get that feature, it comes at the cost of the voxels being a secondary representation, and now the instance updates potentially trample some custom textures/geometry that were placed on top of the instances. It changes the workflow a lot.
- hajile 4y agoAdding more realistic lighting also completely changed workflows from adding random pseudo light sources to having to describe how light should work on various things (this is before considering ray tracing). Those changes were better for realism which was better for users and that trumps artists having to learn new things.