HackerURLs

一次又一次被重新发现的经典。

同一个链接,相隔一年以上,一次又一次被人重新发现、再次冲上 Hacker News 首页。能经受住这种时间检验的,大多是值得一读再读的文章。每篇附中文标题,讨论最热的那些再加上中文导读和高赞评论翻译。

从名人堂开始
  • 4,700+篇经过时间检验的经典

Hall of fame

名人堂

在经典库里看全部精选

上首页次数最多、而且有中文导读的 30 篇。时间轴上每个黑点是一次上首页,空心点是一次没冲上去的投稿。

  1. 正在载入经典…

Archive

经典库

按第一次上首页的年份分布,点柱子筛选。

排序

    About

    这些经典是怎么挑出来的

    1. 01

      合并同一个链接

      读取 Hacker News 自 2006 年以来的全部链接投稿,把 http/https、www、跟踪参数等写法不同的同一篇文章合并成一条。

    2. 02

      只留经得起时间的

      同一链接至少两次拿到 50 分以上(约等于上首页),而且两次相隔一年以上;再由 AI 剔除状态页、产品首页和新闻事件。

    3. 03

      写导读、译评论

      上首页次数最多的 2,000 篇配上中文导读、"为什么经久不衰",并精选翻译 HN 高赞评论。导读由 AI 生成,可能有误。

    编程与软件工程adriancourreges.com编辑精选

    GTA V 图形渲染研究

    GTA V – Graphics Study

    2次上首页
    3年跨度
    642累计得分
    68条评论

    2015 — 2018,它一次次回到首页

    黑点是上首页(≥ 50 分)的那次投稿,空心点是没冲上去的投稿,点越大分数越高。

    导读

    作者 Adrian Courrèges 通过逐帧抓取分析,深入拆解了《GTA V》一帧画面背后的完整渲染流程:多通道渲染、LOD 剔除、软阴影模糊、延迟着色等技术被一一呈现。文章把一个庞大复杂的实时渲染管线拆成清晰的小步骤,展示了游戏引擎如何在一帧之内完成海量处理。

    为什么经久不衰:它把看似'魔法'般的游戏画面还原成可理解的工程步骤,是实时图形学逆向分析的经典范例,多年后仍是学习现代渲染管线的绝佳入门材料。

    关键词 图形学渲染管线GTA V逆向分析

    HN 评论精选

    复杂技术被拆解成清晰步骤,令人感叹实时渲染进步之快

    看到这么棘手的大问题被拆成这么多小块真有意思:多通道渲染、LOD 剔除、软阴影模糊。这让我想起克拉克的名言'任何足够先进的技术都与魔法无异'。每一帧都要经过惊人的处理步骤。想到 2002 年用 Windows NT 机群跑 3D Studio Max 渲染要花多少小时,我都觉得自己老了。

    gdubs查看英文原文

    Really neat to see a big hairy problem broken up into so many small chunks. Multi-pass rendering, level of detail culling, soft-shadow blurring. It reminds me of the Arthur C. Clark quote that "Any sufficiently advanced technology is indistinguishable from magic". There's a phenomenal amount of processing steps happening here, on a frame-by-frame basis. I feel old thinking of how many hours this type of rendering took running 3D Studio Max back in 2002 on a network of Windows NT boxes.

    推荐作者此前的两篇同类图形分析文章

    这是作者拆解的第三款游戏,前两篇也非常精彩:《最高指挥官》和《杀出重围:人类分裂》的图形分析。

    corysama查看英文原文

    This is the third game that the author has dissected. The previous two are also very nice :) http://www.adriancourreges.com/blog/2015/06/23/supreme-commander-graphics-study/ http://www.adriancourreges.com/blog/2015/03/10/deus-ex-human-revolution-graphics-study/

    补充解释棋盘格抖动的真正原因:延迟着色下 alpha 不可用

    关于棋盘格抖动模式,我认为更好的解释是:延迟着色不支持传统 alpha 混合,所以他们用屏幕门透明(screendoor transparency)来代替,以节省填充率和着色计算。

    johntb86查看英文原文

    > "I believe this mode is used for meshes very far away or transitioning between LOD levels, it allows to save on fillrate and shading calculation by discarding certain pixels." I think this is a better answer for why they use checkerboarding: http://gamedev.stackexchange.com/questions/47844/why-are-some-games-using-some-dithering-pattern-instead-of-traditional-alpha-for Summary: Alpha doesn't work in deferred shading, so they use screendoor transparency instead.

    游戏开发结合前沿图形技术与快速迭代,魅力独特

    我一直热爱计算机科学,但总是被游戏吸引,这篇文章让我想起原因:把前沿图形技术用于创造美丽画面和沉浸世界太迷人了。而且游戏的视觉/音频迭代循环很紧凑,构思出方案几小时后就能有玩家可测试的原型,回报感极强。

    shinymark查看英文原文

    I love computer science and have been attracted to all aspects of it for years. But I still continue to gravitate towards games and this article reminds me of why. Thank you to the author. Practical application of cutting edge graphics tech to both make a beautiful image and create an immersive world is so compelling to me. I also really like the tight visual/audio iteration loop games provide for day to day work. It's incredibly rewarding to me to conceptualize how to solve a problem and have a playable prototype in the next few hours that a real player can test. I can imagine myself working in various fields but I'm always drawn back to games for better or worse. While it's just as likely as a developer you'll incite gamer rage with some small mishap there is also the opportunity to make a piece of entertainment people love and remember. That's the goal I keep striving for in my work.

    历次讨论

    同类还值得读

    1. 开源应用架构

      The Architecture of Open Source Applications

      《开源软件架构》(AOSA)是一本在线免费书,邀请知名开源项目的作者亲自剖析其内部设计,涵盖 SQLAlchemy、LLVM、Audacity、Apache、Bash 等系统。

      编程与软件工程上首页 9 次 · 2011–2024aosabook.org编辑精选
    2. 编程语言简史:简短、不完整且多半错误

      A Brief, Incomplete, and Mostly Wrong History of Programming Languages

      一篇以戏谑、故意不准确的方式回顾编程语言史的博客文章,用夸张轶事和讽刺定义串起 Lisp、C、C++、Java、JavaScript、PHP 等语言。

      编程与软件工程上首页 8 次 · 2009–2021james-iry.blogspot.com
    3. SQLite 是如何测试的

      How SQLite is tested

      SQLite 官方文档页,系统介绍 SQLite 的测试体系:多种测试方法(TCL 测试、模糊测试、回归测试、静态分析等)和海量测试用例,展示了这个小型开源项目如何靠极致测试获得…

      编程与软件工程上首页 8 次 · 2009–2025sqlite.org编辑精选
    4. 高级编程语言(2009)

      Advanced programming languages (2009)

      Matt Might 的经典文章,按用途推荐“高级编程语言”:如果追求就业就选主流语言,如果追求表达力、学术研究或创业,则推荐 Haskell、OCaml、Scala 等函数式语…

      编程与软件工程上首页 8 次 · 2009–2022matt.might.net
    5. 我的 Forth 与栈机器经历

      Yosefk - My history with Forth & stack machines

      作者以亲身经历回顾了使用 Forth 语言和栈式机器的历程:既赞叹其简洁优雅、代码量小、可自举的优点,也坦率指出栈操作在实际编程中的痛苦,以及 Forth 社区文化中的问题。

      编程与软件工程上首页 8 次 · 2010–2024yosefk.com编辑精选

    打赏支持

    打赏二维码

    觉得有用,请作者喝杯咖啡。

    WeChat

    关注向阳乔木

    微信公众号「向阳乔木推荐看」

    微信公众号「向阳乔木推荐看」二维码

    微信扫一扫;在微信里打开本页时,长按二维码识别。