<tr id="tp1vn"><td id="tp1vn"><dl id="tp1vn"></dl></td></tr>
  1. <p id="tp1vn"></p>
  2. <sub id="tp1vn"><p id="tp1vn"></p></sub>
    <u id="tp1vn"><rp id="tp1vn"></rp></u>
    <meter id="tp1vn"></meter>
      <wbr id="tp1vn"><sup id="tp1vn"></sup></wbr>
      日韩第一页浮力,欧美a在线,中文字幕无码乱码人妻系列蜜桃 ,国产成人精品三级麻豆,国产男女爽爽爽免费视频,中文字幕国产精品av,两个人日本www免费版,国产v精品成人免费视频71pao
      網易首頁 > 網易號 > 正文 申請入駐

      僅靠CSS、HTML復刻《DOOM》,程序員極限“整活”:把div元素當3D游戲引擎用

      0
      分享至


      編譯 | 蘇宓

      出品 | CSDN(ID:CSDNnews)

      多年來,“HTML、CSS 到底算不算是編程語言”一直是前端圈一個頗具爭議的話題。

      一邊是工程師堅持認為,它們只是標記與樣式描述工具,不具備傳統意義上的邏輯能力;另一邊則認為,在現代瀏覽器體系下,CSS 已經具備足夠復雜的表達能力,甚至可以完成一些超出“樣式表”范疇的工作。

      爭論還沒完全有結論,一個更“實戰化”的例子就出現了。

      來自荷蘭的開發者 Niels Leenheer 近日做了一件看起來有點離譜的事:他沒有使用 WebGL,也沒有依賴任何游戲引擎,僅僅依靠最基礎的 HTML 和 CSS,就復刻出了一個“能玩的《DOOM》”。

      在這個被稱為 cssDOOM 的項目里,墻壁、地板、木桶、甚至惡魔怪物,都不是傳統意義上的圖形資源,而是通過一個個在三維空間中不斷變形的

      標簽構建出來的。JavaScript 只負責游戲邏輯與主循環,而所有畫面的渲染工作,則完全交給 CSS 來完成。

      項目地址:https://github.com/NielsLeenheer/cssDOOM



      Niels Leenheer 是誰?

      Niels Leenheer 是一位資深開發者,他最為人熟知的創建了是 HTML5 標準測試網站 HTML5test.com,以及瀏覽器用戶代理解析工具 WhichBrowser。同時,他也是 Fronteers 大會委員會的成員。

      此前,他曾完成一項趣味實驗,成功在示波器上運行《Doom》,并借此編寫代碼,從原版游戲 WAD 資源文件中提取地圖數據。

      本次 CSS 版《Doom》,正是在該實驗的基礎上迭代開發而來。


      純靠 HTML、CSS,Doom 是怎么實現的?

      Niels Leenheer 首先將提取的游戲地圖數據,編譯為由數千個`

      `元素構成的靜態場景。

      ">

      每一個元素都標注了《Doom》原始坐標參數。


      隨后,瀏覽器的布局與合成系統會接管渲染工作,通過 CSS 的 transform 以及諸如 hypot()、atan2() 等數學函數,把這些元素渲染成定位在三維空間中的對象。

      }

      與其讓 JavaScript 負責完整的三維幾何計算,這個實現選擇了一種更“偷懶”的方式:腳本只傳遞原始的坐標點,以及地板和天花板的高度等參數作為自定義屬性,其余諸如墻體寬度、旋轉角度等三角計算,全部交給 CSS 引擎來完成。

      這種分工是有意為之的:游戲核心循環邏輯改編自《毀滅戰士》開源 C 語言代碼,由 JavaScript 負責運行,同時僅向 CSS 開放坐標數據、狀態參數與少量自定義屬性,構成輕量化渲染層。

      Niels Leenheer 也曾嘗試把游戲狀態和邏輯完全交給 CSS 來處理,但很快發現并不現實,于是放棄了這一思路,不過渲染路徑依然幾乎完全留在樣式層完成。

      整個項目中一個關鍵難點,在于如何把《DOOM》的坐標體系和渲染技巧,適配到瀏覽器的 3D 處理方式上。比如地面,就是通過將

      元素繞 X 軸旋轉 90 度來實現的,然后再借助 clip-path 的 polygon(),或更新的 shape() 語法,將其裁剪成任意形狀的扇區多邊形,從而支持復雜輪廓甚至奇偶填充規則。


      在不同區域之間實現無縫紋理鋪設的關鍵,是將背景位置錨定在“世界坐標系”中。例如,如果一個元素在水平和垂直方向分別偏移了 200px 和 400px,那么它的 background-position 就會被設置為 -200px -400px,這樣紋理圖案就能像被連續鋪在一整塊平面上一樣對齊。

      場景的移動方式也比較特殊:它并不是通過“攝像機”來移動視角(因為 CSS 本身并沒有真正的攝像機概念),而是通過移動整個“世界”來實現效果。JavaScript 會記錄玩家的位置和角度,并將其存儲在四個自定義屬性中,而 CSS 會對這些數值進行反向計算,使場景朝相反方向移動,同時通過額外的 translate 來補償透視效果,其余部分則交給瀏覽器的渲染系統完成。

      敵人和投射物的精靈渲染則依賴“廣告牌(billboard)”技術:CSS 會讓每個 sprite 始終面向觀察者,在需要時通過 scaleX 進行鏡像翻轉,并使用 step() 動畫來推進精靈幀序列,而 JavaScript 只負責更新對應的狀態屬性。


      場景光照、自動門、升降平臺、彈道特效,統統被轉化為可動態變更的樣式狀態問題。區域亮度以級聯自定義屬性存儲,搭配亮度濾鏡統一調暗昏暗區域,無需逐個修改場景元素;游戲大門通過自定義屬性綁定 CSS 過渡動畫,實現抬升開合,腳本僅需切換狀態標簽,動畫播放完全交由瀏覽器原生驅動。

      彈藥彈道通過起點、終點坐標與飛行時長定義,CSS 依靠位移動畫完成彈道位移,搭配獨立旋轉屬性,讓投射物始終朝向玩家。

      現代布局特性還被巧妙用來實現游戲自適應適配。原版固定寬度的狀態欄,被重構為文檔對象模型獨立組件,彈藥數值、生命值、角色頭像、護甲值、鑰匙道具拆分展示,通過彈性布局自動排版,在窄屏設備上自動換行適配。

      觀戰模式則新增一套 CSS 鏡頭邏輯。

      跟隨視角利用角度正弦、余弦函數結合計算屬性,測算偏移數值,將鏡頭固定在玩家斜后方與斜上方;視角切換依靠獨立的位移、旋轉屬性,讓第一人稱與第三人稱跟隨視角之間實現絲滑過渡。

      性能與畫面精度問題,也暴露了這套純 CSS 方案的固有短板。包含數千個三維變形元素的大型地圖,極易導致移動端蘋果瀏覽器出現畫面卡頓,甚至程序崩潰。

      為此,Niels Leenheer 加入視域剔除機制,自動隱藏玩家視野外的幾何模型。

      基礎版剔除邏輯由 JavaScript 編寫,遍歷場景元素,根據距離與角度切換隱藏屬性。

      Niels Leenheer 還測試了純 CSS 剔除方案:通過樣式參數定義可見性判定,結合延時動畫與關鍵幀規則,利用樣式特性實現元素的自動顯示與隱藏。


      局限性

      《Doom》原生渲染的部分核心邏輯,很難直接復刻至 CSS 環境。

      原版游戲會將天空紋理以純二維形式,繪制在地圖實體前方的虛擬墻體上;而CSS渲染必須構建完整三維空間,天空圖層需要置于所有景物后方。

      這一差異會導致原版被天空遮擋的模型暴露出來,Niels Leenheer 只能額外增加剔除規則,隱藏玩家視角中被天空墻體遮擋的物體。

      Niels Leenheer 明確表示,該項目絕非 WebGL、WebGPU 專業圖形渲染方案的替代品,性能瓶頸也客觀存在,但這并非本次開發的核心目的。

      他在分享中提到,這項開發旨在突破 CSS 的能力邊界。三角函數運算、自定義屬性動畫、裁剪路徑、SVG濾鏡、錨點定位等成熟商用級 CSS 特性,都被賦予了標準制定者從未設想過的全新用途。

      最終成品完整可玩,直觀證明:只要合理運用大量`

      `元素與現代 CSS 語法,無需調用任何圖形編程接口,就能在瀏覽器中完整復刻《毀滅戰士》的游戲世界。

      長久以來,愛好者不斷挖掘各類低門檻、非常規設備運行《毀滅戰士》的可能性,CSS 只是最新的趣味載體。

      也正如 Niels Leenheer 所言,如果說還有什么意義的話,那它至少回答了一個沒人真正問過的問題:CSS 能不能跑《DOOM》?

      答案是:可以。確實可以。

      來源:https://nielsleenheer.com/articles/2026/css-is-doomed-rendering-doom-in-3d-with-css/

      https://www.techspot.com/news/111922-developer-rebuilds-doom-using-only-css-html-turning.html



      【活動分享】"48 小時,與 50+ 位大廠技術決策者,共探 AI 落地真路徑。"由 CSDN&奇點智能研究院聯合舉辦的「全球機器學習技術大會」正式升級為「奇點智能技術大會」。2026 奇點智能技術大會將于 4 月 17-18 日在上海環球港凱悅酒店正式召開,大會聚焦大模型技術演進、智能體系統工程、OpenClaw 生態實踐及 AI 行業落地等十二大專題板塊,特邀來自BAT、京東、微軟、小紅書、美團等頭部企業的 50+ 位技術決策者分享實戰案例。旨在幫助技術管理者與一線 AI 落地人員規避選型風險、降低試錯成本、獲取可復用的工程方法論,真正實現 AI 技術的規模化落地與商業價值轉化。這不僅是一場技術的盛宴,更是決策者把握 2026 AI 拐點的戰略機會。

      特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。

      Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

      相關推薦
      熱點推薦
      曾敲詐中國10億美元、拒飛機借道,如今又找上中國

      曾敲詐中國10億美元、拒飛機借道,如今又找上中國

      光輝與陰暗
      2026-05-12 15:52:19
      他接受紀律審查和監察調查

      他接受紀律審查和監察調查

      錫望
      2026-05-11 21:56:44
      特朗普威脅讓伊朗“再也笑不出來”

      特朗普威脅讓伊朗“再也笑不出來”

      參考消息
      2026-05-11 14:37:08
      又一個郭晶晶?退役后嫁頂級豪門,7年連生4娃,如今已是頂級闊太

      又一個郭晶晶?退役后嫁頂級豪門,7年連生4娃,如今已是頂級闊太

      珺瑤婉史
      2026-05-03 19:20:12
      “問界坐館,四界散仔”,華為汽車的江湖暗流

      “問界坐館,四界散仔”,華為汽車的江湖暗流

      速度計
      2026-05-11 10:26:50
      內娛嘴親爛了也沒他倆眼神動人!道哥實錘:這才是真CP感

      內娛嘴親爛了也沒他倆眼神動人!道哥實錘:這才是真CP感

      可樂談情感
      2026-05-11 20:53:09
      西班牙女主持人自曝:為了給兒子簽名手套和皇馬現役門將發生關系

      西班牙女主持人自曝:為了給兒子簽名手套和皇馬現役門將發生關系

      鄉野小珥
      2026-05-11 20:37:06
      乒聯公布第20周世界排名:張本美和第3創新高!林詩棟梁靖崑回升

      乒聯公布第20周世界排名:張本美和第3創新高!林詩棟梁靖崑回升

      全言作品
      2026-05-11 16:18:28
      如果一個家庭長期沒酒局、沒社交,也少走親戚,只能說明這兩個問題

      如果一個家庭長期沒酒局、沒社交,也少走親戚,只能說明這兩個問題

      心理觀察局
      2026-05-04 09:23:46
      第1現場|俄烏對峙下的紅場閱兵:36年來首次未見坦克

      第1現場|俄烏對峙下的紅場閱兵:36年來首次未見坦克

      澎湃新聞
      2026-05-09 21:40:28
      南方電網員工年終獎、工資待遇曝光!

      南方電網員工年終獎、工資待遇曝光!

      老楊說光伏
      2026-05-11 17:12:16
      頂著一路罵聲,巴黎市區第三高樓驚艷封頂,官方:以后不準再建!

      頂著一路罵聲,巴黎市區第三高樓驚艷封頂,官方:以后不準再建!

      GA環球建筑
      2026-05-11 22:55:32
      地主惡霸劉文彩:子孫眾多,后代回來祭拜,光飯菜就準備了200席

      地主惡霸劉文彩:子孫眾多,后代回來祭拜,光飯菜就準備了200席

      阿器談史
      2026-05-11 15:43:13
      北京備戰G3!許利民記錄計劃,杰曼周琦加練,曾凡博強化三分!

      北京備戰G3!許利民記錄計劃,杰曼周琦加練,曾凡博強化三分!

      籃球資訊達人
      2026-05-12 14:34:44
      瀏陽煙花驚天瞞報:3副市長免職,問責不止

      瀏陽煙花驚天瞞報:3副市長免職,問責不止

      天天都是好日子
      2026-05-11 16:53:00
      烏軍指揮官:前線士兵月薪不到1400美元,誰還守1500公里戰線

      烏軍指揮官:前線士兵月薪不到1400美元,誰還守1500公里戰線

      桂系007
      2026-05-12 05:26:17
      成都男子被“天降鋼管”砸傷縫8針,傷者:肇事者已找到,警方帶走調查

      成都男子被“天降鋼管”砸傷縫8針,傷者:肇事者已找到,警方帶走調查

      封面新聞
      2026-05-12 10:20:04
      估價8萬!帶有麒麟號的100元紙幣,誰有就發了!

      估價8萬!帶有麒麟號的100元紙幣,誰有就發了!

      富哥愛收藏
      2026-05-10 14:09:59
      現實版“高達”!宇樹發布載人變形機甲,定價390萬元起

      現實版“高達”!宇樹發布載人變形機甲,定價390萬元起

      界面新聞
      2026-05-12 13:56:02
      “活該全村人都瞧不起我家!”農村女孩的自述火了,看清父母為人

      “活該全村人都瞧不起我家!”農村女孩的自述火了,看清父母為人

      妍妍教育日記
      2026-05-11 18:22:42
      2026-05-12 16:28:49
      CSDN incentive-icons
      CSDN
      成就一億技術人
      26530文章數 242284關注度
      往期回顧 全部

      科技要聞

      宇樹發布載人變形機甲,定價390萬元起

      頭條要聞

      女子立遺囑遺產歸弟弟 其女起訴兩人返還857萬及房產

      頭條要聞

      女子立遺囑遺產歸弟弟 其女起訴兩人返還857萬及房產

      體育要聞

      總是掉鏈子的“倒霉蛋”,闖進了歐戰決賽

      娛樂要聞

      劉濤曬媽祖誕辰活動照 評論區變許愿池

      財經要聞

      黃仁勛真是被白宮徹底封殺了

      汽車要聞

      吉利銀河“TT”申報圖曝光 電動尾翼+激光雷達

      態度原創

      游戲
      藝術
      親子
      教育
      時尚

      任天堂官方貼心提醒!購買會員需注意 很快漲價

      藝術要聞

      這位畫家的油畫美人讓人驚嘆不已!

      親子要聞

      三歲分床,五歲分房,真的有必要嗎?

      教育要聞

      正確率5%的解方程

      征集|| 她們也太會買裙子了!邊看邊種草

      無障礙瀏覽 進入關懷版 主站蜘蛛池模板: 久久天天精品麻豆国产| 亚洲熟妇自偷自拍另类| 第一福利导航视频| 应用必备| a级黑人大硬长爽猛出猛进| 国产精品乱伦| 免费**毛片在线播出| 手机看片国产一区二区三区| 日韩成人福利视频在线观看| 91成人在线免费观看| 日韩片| 欧美亚洲另类一区二区三区| 精品一区二区三区在线播放视频| 免费av在线网| 日韩巨乳在线观看| 曰韩无码无遮挡A级毛片| 日产国产一区二区不卡| 中文字幕一区二区三区又粗| 大地资源网视频观看免费高清| 91精品亚洲一区二区三区| 日韩高清砖码一二区在线| 亚洲AV一二三| 日韩人妻精品中文字幕专区| 日韩第一页| 久久无码一一区| 印度AV网| 欧美人与性动交α欧美精品| 国产精品女视频一区二区| 久久亚洲精少妇毛片午夜无码| 人妻夜夜爽天天爽三区麻豆av网站| 国产极品精品自在线不卡| www.日本H视频在线| 国产精品一区二区不卡的视频 | 国内精品自线在拍| 热久久综合这里只有精品电影| 国产成人AV综合久久| 精品亚洲成在人线av无码| 成年男女免费视频网站| 丁香五月亚洲综合在线| 成人无码视频在线观看大全| 精品国产午夜福利伦理片|