duangsuse::Echo
907 subscribers
4.78K photos
147 videos
588 files
7.17K links
import this:
美而不丑、明而不暗、短而不凡、长而不乱,扁平不宽,读而后码,行之天下,勿托地上天国。
异常勿吞,难过勿过,叹一真理。效率是很重要,盲目最是低效。
简明是可靠的先验,不是可靠的祭品。
知其变,守其恒,为天下式;穷其变,知不穷,得地上势。知变守恒却穷变知新,我认真理,我不认真。

技术相干订阅~
另外有 throws 闲杂频道 @dsuset
转载频道 @dsusep
极小可能会有批评zf的消息 如有不适可退出
suse小站(面向运气编程): a19a0b
Download Telegram
dnaugsuz, [9/5/26 12:01?PM]
一波人因为AI接管越来越多工作而emo了
一波人因为AI能“替他学习”而疯狂了

但其实没有变化,内行依然是内行

https://t.iss.one/dsuse/22439

就比如,现在我也能写一些WebGL,但是我不会一直写

之前写了起码20个类似P5的demo,现在看来没有改变什么

实现一些玩具不会让你有归属感,也不会积累见识或提升灵感

但是认真这样做又没有动力,毕竟任何领域都是有些个人文件和收藏夹积累的,这些AI模板给不了,但念起来就像spell一样。《魔法禁书目录》属实超前了

你的见识是在那20个demo之前成立的,崇拜或Follow某些信源并不需要【实现】任何概念。这就是IT一词的本意

预制人终究是预制人,没有自我,只是一面镜子

所谓的Agent并不是“人造人”,不是白嫖熟练工的工资了,只是让智能能在codebase上刷测试而已。搞不明白在没有下层语境,一摸黑的情况下,如何真正【继续设计】。

这听起来就像【屏幕以内全自动翻译】,就对等于学会了外语的人,实际上,根本不一样。

只是不【写】只【套】的人体会不到自己不会,他们可能以为prompt的少,自己就能抄过来完成,但真打开WebUI就会感到迷茫,也没有【泛化能力】
duangsuse::Echo
== purrpod.github.io 看了一下耗时一年的个人项目,现在的 Agent IDE 是这样的 - 【预制人转“真人”】vec+grep 的相关性匹配和 MEMORY.md 的日志记忆 - 【上文缓存】自动寻找安全截断点(tool_result),被挤出的历史替换为高度压缩的 Memo 摘要提示词注入。MCP 缓存命中率优化polyfill - 【角色扮演】Blender式DAG编排思维链,通过 tool call 生成文件,且支持条件和人工弹窗节点 - 【把键鼠给他】节点可配置环境变量和专属工具,Docker…
dnaugsuz, [9/4/26 7:05 PM]
我至今在思考,如果拉起几个roleplay,然后在旁边看着,顺便把自己的思维也切碎成roleplay的,然后就从无限模板里捞出一个70%达到小站小App水平的out

这怎么不会像AI绘画->强行补间成AI视频的Workflow那样,成为历史

我是在学习 ControlNet + RIFE 吗? 为什么Agent不是一键的呢? 我调的到底是什么特色?

—-
今天被疯狂star的各种Agent设计,不断迭代的MCP,Skill, hareness (TDD+VM) ? 到底【差别】在哪。不是说换代的差别,是你和别人的差别,创新的差别

难道是在“请继续”是否自动,或tmux开几个标签上? 而如果你已经做好了架构决定,为什么还需要【交互式的】 “指挥”多Agent IDE呢

总感觉这种拉几个上文起来角色扮演,把键鼠屏幕给出去的开发有瓶颈

使用(测试)软件的只有一个人,拉起的上文有各种自己的细节。 可是它们终究是为一个人,或几个人就能跑起来的【软件架构】服务的

看起来如此“需要技巧”,那么是切到“界面设计”的上文,让Agent改个设计,然后按F5预览吗? 或者让数据库Agent加个验证条件? 可是我感觉,并不需要切换上文啊。

这就像用人类画家的繁文缛节要求sd模型一样,其实工作流(节点融合、浮层滤镜)完全是不一样的,它可没有调色板。今天的各种LLM/vLLM封装给我一种【这个调色板是铁做的】【这个墨水是速干的】的感觉
Forwarded from 今日份的豆酱 (Kiseopt)
请冷静地听我说:
Nmap已经是29年前的端口扫描器了
Wireshark已经是28年前的抓包工具了
Burp Suite已经是23年前的渗透工具了
sqlmap已经是20年前的注入工具
Cobalt Strike已经是14年前的C2平台了
Kali Linux已经是13年前的渗透测试系
WannaCry已经是9年前的勒索软件
Log4Shell已经是5年前的漏洞
今日份的豆酱
请冷静地听我说: Nmap已经是29年前的端口扫描器了 Wireshark已经是28年前的抓包工具了 Burp Suite已经是23年前的渗透工具了 sqlmap已经是20年前的注入工具 Cobalt Strike已经是14年前的C2平台了 Kali Linux已经是13年前的渗透测试系 WannaCry已经是9年前的勒索软件 Log4Shell已经是5年前的漏洞
#security #bash
nmap 比你还老,甚至《黑客帝国2》里崔妮蒂用它黑电网都已经是 23 年前(2003)的镜头了。

IDA Pro 已经是 35 年前的反汇编器了(1991)
Ghidra 都已经是 7 年前开源的了(2019)
Metasploit 已经是 23 年前的框架了(2003)
Aircrack-ng 已经是 20 年前的 WiFi 破解工具了(2006)
Hashcat 已经是 17 年前的了(2009)

CVE 编号体系已经运行 27 年了(1999)
Heartbleed、Shellshock 已经是 12 年前的了(2014)
永恒之蓝 / Struts2 S2-045 和 WannaCry 同岁,9 年了(2017)
EternalBlue 已经是 9 年前泄露的 NSA 武器了
Log4Shell 已经是 5 年前(2021)的核弹了
Meltdown / Spectre 已经是 8 年前的了(2018)
熊猫烧香已经是 20 年前的病毒了(2006)

漏洞类型还是那几个——注入、反序列化、越权、弱口令
但是你仍然能用 binwalk; photorec; Recuva,当然能用 #reveng,用修改器、备份工具或 “资源盗录”,只是它们也没有以前那样强大了。 逆向工程显得不值,一部分是AI辅助原型与二开的好原因,也是因为AI短视频已经足够占用精力

MT管理器和AutoJS已经一口价几百了,没有资源社区的开源“砖头App”终究会消散。

==
在2023/2024年,破解一个1999年的512位RSA根密钥,成本 = 一台高端台式机 + 约30小时的运行时间。 https://t.iss.one/hacker_news_zh/24624

#dalao CMake UI https://nullprogram.com/blog/2026/04/07/
#reveng https://github.com/corkami/pics
#py https://www.dabeaz.com/tutorials.html
今日份的豆酱
请冷静地听我说: Nmap已经是29年前的端口扫描器了 Wireshark已经是28年前的抓包工具了 Burp Suite已经是23年前的渗透工具了 sqlmap已经是20年前的注入工具 Cobalt Strike已经是14年前的C2平台了 Kali Linux已经是13年前的渗透测试系 WannaCry已经是9年前的勒索软件 Log4Shell已经是5年前的漏洞
#android #post 远古时期的系统工具——数字领域的【Pro化】

但是dSploit那胖重的Gentoo容器没有继续,cSploit 这个续命的 fork 在 2016 年前后就停在了 nightly 版本
ZANTI的图形化手机版MITM、《幻影WIFI》《万能钥匙》再也没有,图形化的 MITM、Session Hijack、Replace Images 那些"一键流氓"功能被HTTPS杀了

录屏、图标包、卸载或禁言预装App、A11y划词、顶栏流量和AFW…… 再也不需要root了,直接诏安无数还在突破 “沙盒” 的极客。 字体和“图标体系”开始要收钱了

甚至《烧饼修改器》《八门神器》的堆内存都少有人改了,钛备份游戏存档,一个个优秀的理念随着【小厂游戏】一起吃灰

死慢的MTP甚至SAF接管了“没有风格”的通用UMS存储,省下不到1M的内核体积,让可畏的后生有了【大展拳脚】的机关,吃得开;USB接口投屏的功能则被厂商砍了,一个设备省几块钱

就连DriveDroid都不能用了,勉强能开个 VPN Hotspot 和Shizuku。Busybox和SU再也不需要手动安装了。 #coolapk 早就没了,被国内开发商管惯了,但没有像B站那样兼容旧B友
纯粹想体验手动OTA的新奇感的人也不再需要Flashify,反而开始想方设法避免因升级而 “错过root的机会”。乱改系统文件也被认为是【玄学优化】,各种管理器被弃

“这机器还能被我们变成什么?” 便随着你的 /data/{app,data} 目录被交给【云加密】了,其实有没有加密所有人心里有数,我们只是讨厌离线的、本该是可替换文件的那90%也被绑架
Play核心破解和AdAway广告拦截的【偷窃】被制止,与他们一同消灭的是VIP的免广告权利——交了钱也要求李跳跳

【大厂】抄的越多,加的私货也就越多,譬如随着wm flag的“Pro化”,拍屏和“录屏”重新回到了群组文件中

曾经那个到处都是UI的安卓生态已经被【吸收】了,可能为了一个【大厂调好的】美图编辑软件,你已经放弃了【上古ROM】里无数侵入SystemUI.apk的主题美化。


自由与安心感你只能选一套,就像那些死死锁60fps不准破的游戏。 🍨

以前打开手机系统是「我有档可读」,现在,一声精细准备的「宾至如归」以刻意却不失体面的时机弹出,“您不能哦”。 🧑‍💻
duangsuse::Echo
#ai 喜报: https://chat.librechat.ai/ 支持 Steering Messages 了 喜欢发长文的人可以分段后直接批量发送了 ps. 没想到他们给 Send Queue 起了这样的名字。 按我看,这个功能ChatUI第一天就应该做,比什么 /prompt 角色扮演重要多了 花大量精力去卷各种浮夸的 Agent 工作流或 Prompt 广场,反而把最基础的“人机输入交互”当成了理所当然的单行道。 “挤牙膏”式等待。 比起 Gemini 好久还支持的 Edit,LC早就可以替换或…
#ai 喜报: 仍有一半流行Client不支持批量发送

不能用于预设好prompt扔进去, 还吹工程这个概念。从 #bing 开始这都已经两年了吧 😅😅😅

我还没问是否有能接受(不过度逼仄)的two-way-diff ,以及能不能copy整个prompt串发到另一个对话串,或者在等待时管理队列;更不用说让模型提供个尾随buttons,猜你喜欢这样的「高级UX协议」了

唉,还是块块感谢他们发明了 fork/reset 吧,虽然实现的如此艰难。 所谓的取代人工就是注意力错位,好大喜功 😁
基本功都「俺寻思」成这样了,还超越手搓……

别问能不能搞【多元化输入方法】了,还是快快感谢md和pyjs救了好多人,以及居然支持TeX和mermaid内插了,真是太高级了,我都要为先进的项目管理流眼泪了。 LLM输入时你不能发这真是最搞笑的【产品设计】呵呵呵

Codex CC们就更牛逼了,居然可以QoS低费摘要高费读,还允许模型choose是CtrlA替换还是按行搜索替换,省的我去CtrlCV了,wow 不愧是后端大佬,就是比前端布鲁斯聪明呢,可惜在我看来这设计思路还不如git与朋友们

😋 我还记得去年,看见一个WebUI能保证往上滚不被LLM输出的$0.scrollTop更新打断,appendOnly的代码高亮不闪烁,或者编辑重发保证不丢内容,都要谢谢大佬。 这届前端是否知识面也太窄了,或者说【算力消耗感知】也太抓瞎了

😡 能够在UX上做的如此低创,真不明白它们的【架构底蕴】是从哪里port过来的。好像等AI时随便滑滑,或动下draft框,用户就会万劫不复那样,但是 [testid] 和各种框架细节的数量却与这种贫瘠的UX不符

自己连CSS都写七八百行0复用,还去Docker服务拉群凑热闹,为什么不学sw.js和wasm sql+fs好了,nativeBridge插件呢。LLM全线100%低端fetch换行流都不怕人家说不牛逼 😅

- 简直是《人类一败涂地》,就这还AI生产力觉醒呢,Jupyter和dsh都比不过。连问题出在哪都并不注意 (并非用Agent/Goal就能跳过【发送队列】的UX工具),等Maker这么久真是绷不住了 非得油猴AOP是吧
- https://github.com/PC2005-cloud/dsh-pet#效果预览 💸 计费桌宠
duangsuse::Echo
简直是《人类一败涂地》,就这还AI生产力觉醒呢,Jupyter和dsh都比不过。连问题出在哪都并不注意
#statement

😁 哈哈,滥竽充数公理。 放公司里还有养闲人,提升【排场】,AIGC出玄学Task和周报,提升社会参与感的副作用,但放在「像使用时那样开发,即是软件价值」的场景就会显得赛任一般扭曲了。

一定要用大名鼎鼎的破烂玩意(譬如死慢的Gradle),GH文件和主md不能小于三页,开箱即用耗时不得<10min

我真是太懂云原生了
duangsuse
光凭一个 demo,就给一家游戏公司下这样的结论,确实太草率了。这个案例做到了什么,离商业游戏还差多少,我没讲清楚,标题倒是先下了结论。 真以为任天堂不会用AIGC.png 而且,这种特效管线为0,也没融合动效、游戏脚本、玩法创新、IP和发布的东西…… 用一句话,左边实时排名,右边赛道小地图,圈数、计时、时速、集气条都齐了。 场景里的城堡、大蘑菇、起跑线,也都给你搭好了。 所以就是抄开源,内核套闭源的呗…… 试试离开AI擅长的H5技术栈,做成端游或 RTX ready 😂
这似乎在开源软件(Luanti; BlockWild.app )上改了不少? #game

刚刚说这个, #bilibili 就有人一条对话线升级了 #CG , 轻松到甚至懒得发视频

Astra:不是使用逆向编译或泄露的 Minecraft 源码,而是复用了独立开发的开源引擎 Luanti 和玩法项目 Mineclonia,再做中文界面、光影配置等修改。


云层、树冠和远景一起重新调整。 让天空真正参与照明。水面重点处理了重复高光与反射失真 (水体深度吸收、菲涅尔反射与天空盒、方块AO)

Astra 开了个Linux Chromium; py 与 SwiftShader沙盒,

用webgl离屏渲染测试的,甚至还试玩以便测试PBR( “海岸光影试验场 → 创建独立试验世界”) ,并不是 “BlockWild 使用了 Filament”

日落颜色、 雾化/光晕、水面细碎高光、水下、云内部volume明暗,LUT用预计算换实时性能都有
duangsuse::Echo
Astra 开了个Linux Chromium; py 与 SwiftShader沙盒,
#game https://github.com/RedLynx101/Blockwild

7.5号Claude起步的MC克隆,在内存较多时可以打开。居然没有一个人star,而AI发现了友军的成品就拿来加 render() 层了 😅

基本上TS脚本和操作+Rust体素引擎零依赖,源码近40万行,基本上只能靠AI的case study和HITL继续开发

📚 https://github.com/RedLynx101/Blockwild/blob/main/BLOCKWILD_AGENTIC_AUTORESEARCH_CASE_STUDY.md#architecture-built-for-both-players-and-agents


但是,真的需要500M内存才不会挂。相比之下 https://minetest.dustlabs.io/ 体素引擎在画质类似时需要20MB,只是非标地形和玩法的完成度为0

RLE和Octree的稀疏表示是3D体素引擎的常识,与最开始不支持Endless(直至现在也并非种子求差方法)且“为无头Agent优化”的BlkWild完全不同。 实际上纯函数噪声和Procedural是可以互补的,JS玩法绑定也不一定会炸GC(丰富≠胖死)

Minetest只解决了引擎,但这人用AI只剩下run crash的贴图、方块表和模型

😨 只剩下luanti了吗? 2d/3d 体素没有玩法成熟度接近MC的?


绝大多数体素开源项目都死在“写完 Chunk 网格和光照后,发现还要填 500 种方块、几十种生物 AI、流体与逻辑系统”的内容债务里。 Terraria/Necesse 横板俯视的2D体素,没有开源的位置。

fogleman/craft (2MB) 基于无限Simplex+SQLite支持光照很有创意, classicube.net 平衡的较好但世界生成是残的,老MC(估计连带着流式存档也费劲),不要红石和武器好平替也没人做出来过。

可能 veloren.net #Rust 和 openclonk.org (3D+2D)的思路比较好(多细节层次体素 自己捏脸 + 类似Nealfun的对齐连续场),ECS架构先进美术也在线
duangsuse::Echo

可能 veloren.net #Rust 和 openclonk.org (3D+2D)的思路比较好
沙盒游戏 🤔🙏🏻

我认为开发的难度之一,在于【迁移调试】困难。有许多开源或MOD SDK 高度精细的,体素沙盒类游戏,它们的方块模型是通用的,理论上可以互相读档,已经能共享贴图音效包

(当然,不至于各自做load/dump兼容,可能该像MCP/剪贴板那样互通,但是xyzb实时的,带宽可能比纯函数图层/同codebase联机吃点亏)

甚至游戏AI/建筑、玩法、特殊方块的脚本,理论上都可以<3天/feat 的移植投影编辑过去,

这样,如果要重写一部分子系统或CG管线?剩余的缺口不至于全靠AI现做 OR 一抹瞎,而可以直接map到成熟的pid上去继续coplay试玩,更容易找到创新点。

搞不好还能3D体素读2D档,做成超级玛丽奥德赛那样的minigame (总之就是,有一个跨pid的协议比重造轮子强,而且是创新而非rework的基础)。 直接把Terria的算法抄到任何一个引擎里,至少有传播受益。 😨


更新即跑的跨pid模块化,确实对dev是很大的鼓励,介于MC成熟的AI和建模可以白嫖,甚至跨进程与开源杂交,这样内部测试反馈后完成落盘,想必质量上升难度下降。 纯AI弄40万行(还不含音画资产)实在不成

反正体素游戏,本就有 creature/item->[chunks dat]->proc->lazySeed纯函数 这样的管线了,联机也一样,跨引擎也不该差很多。但是强引擎对精简引擎的拉扯是生态级的,只是shader不能套皮而已。

技术上的难度也显然了。craft和?classicube都没实现TNT,换句话说,批量更新blk的优化在这些前端可能只有水流,结合【海市蜃楼】的眼前优先同步约等于1-by-1换方块。【通用方块换皮sync】对渲染器有侵入性,此外coplay只是SHM不落盘,但MC没有这样的方块属性

如果coplay实现了,就等于送了游戏TNT优化和临时方块(即便支持联机的,也不清楚是不是瞬态免求同的机制)

而且MC类游戏本质上是把2D的四象限树裁剪成顶点(留下岩浆湖之类的光方块),RLE方法剔六个面,再RLE做大贴图,这样个算法推广到3D然后噪声也调教到3D,所以前端不如说是GPU的小秘,xyzb结构被污染,SHM也不清楚能parse多快。 SoA 和多态区分多数组是必须的,可是toy前端又可能没这么想

如果硬要以xyzb为协议锚点(即便如此显然),性能也可能是1-by-1而产生大量无防抖的重算;如果以 GL AOP 的姿态,比如说只同步存档建设方块和牛羊,虽然只用关心RenderDoc和摄像机,但这太冷门了(即便理论上该和png叠图一样难)。只能说希望增加blk2gl和落盘的防抖百行以内。

但做到的话连跨引擎联机(可能通过JS脚本兼容)也不在话下了

然后还要从chunk.load事件里偷是那些方块与seed不同,才能同步旧建筑,至于老版全图加载也无所谓。这也会导致海拔不同的建筑出现浮空甚至埋了的问题,所以他们的生成器不用和存档器隔开,这里边其实差一个类似GIMP的智能选区和拖放工具,但把seed柱面一起偷来也是一种hack(-地表y0=海拔)

也可以对房子类做个简单横截面均值接地片 (当然我觉得这其实是MC创造模式自己的问题,它只是解了chest连noclip都不带。 如果下决心做的话,通过【方块类型即建筑】和脚下生成crop强行缝合存档并不难,也有相应MOD生态)

最好不要过度工程了

搞笑的趣闻:如果把平地城堡 paste -air 到半山腰,会出现内部都一半被埋了的城堡,然后你可以自己清灰…… GIMP的智能选区..

想了一下,实时SHM{xyzb/rpm} 区块内creature同步可行性还行,如果能复用旧存档和模型(+预处理贴图包)资产,甚至是间接偷到ModPE生态(PE脚本骨皮建模也是json),肯定对 voxel game 开发者试错有很大帮助。 如果认真要开发的话,做二开也比做竞品/PoC toy 强 😇
#algor #TIL 更适合文本的压缩格式

原文:https://github.com/iczelia/bzip3
阅读时间:4 分钟

话说谁知道 mp4格式, h264算法 不是一个东西的事情(不过mp4依赖ts切片 不断点续传 可能有体会)

既然为文本和源码优化,为什么不做语法字典和json转码等等,而用字节级算法

#ai 全语言分词器 https://fixupx.com/shuding/status/2097348783415939541?s=20
GPU比吐出htm还快点 https://github.com/huozhi/sugar-high/blob/main/packages/sugar-high/lib/lang/c.js

说到最后,git, casync, zstd “自注意训练” 还是比结构化方法效果好。 信号处理就是比古法编程强啊,诶。。

这就像CE里改个数值如此容易, git clone 后改个C字面量反而困难一样。虽然不是一个结构,但CE可以转外挂金手指,是等效的flow 😨
duangsuse::Echo
这就像CE里改个数值如此容易, git clone 后改个C字面量反而困难一样。虽然不是一个结构,但CE可以转外挂金手指,是等效的flow 😨
#ce #game 游戏为何锁60fps

当你在做「结构化编程」时,一层是一层,编译不是运行,可是CE和zstd就是用运行的方式来调的。你认为它只懂字节,它已经把XML/JS的词法给学会了 ——就差个内容编址变量名的minifier理解作用域,它连样板流控都能“搞懂”吧

一个文件里可能既有 HTML,又有内联的 JavaScript 和 CSS,"public static void main" 是一个词而结构化误以为是4个。它是 N-gram(N元语法模型)不是1gram。

结构,其实是Event的一种响应过程、消息分界符,代码不是绝对真理的“值”。


你认为LLM只懂字节,它看到和消灭的蠢货字节可比你多呢

这就像CE里改个数值如此容易, git clone 后改个C字面量反而困难一样。虽然不是一个结构,但CE可以转外挂金手指,是等效的flow 😨

我感到民科信号处理,就像对 for(A;B;C) 的每个变体手搓“简化宏”或给ChatBot设计文字游戏,以及只懂几个虚词的NLP那样古怪。 【直觉】确实比结构重要太多了,你不能用大脑说的道理优化小脑在做的事,而且那的算力不够。

如果从经济学、从历史终结的角度考虑,LLVM和GCC的实现怎么不像【通过规则集优化压缩算法,以为自己更牛/更懂】一样蠢呢? 编译器的价值在于意图确定、优化点肉眼可见的IR,而不是玄学Pass。它们甚至没有把PGO放在优化Loop里,它们假定程序是不会开箱即用的九头蛇,AOT算法不会区分CLI/GUI/Web,而Harness做到了

这些人太傲慢,还去写AI(GPGPU)编译器,实际上,即便是图算法也像用手动 for(A;B;C) 的规则集压缩一切一样,对flow知之甚少,却让人误以为充实。CE确实不能跳过make install的复杂性,template<>类型体操确实【深奥】,但frida和#[proc_macro]比你更牛。它们就是像lambda{}那样的真正【元编程】,而所谓的结构化方法,离正常人眼中的编程,太远。也太蠢。



所以,编译器/优化必须和编辑器,甚至和编程语言是一回事(像 numpy/taichi/paholes 省内存工具)。不然,以后它就被自适应的LLM优化缓存吊打。代码的优化是一个【人机接口问题】。问题要修在 root cause

#CS “(相比于LLM重构,)软件工程所做的一切技术选择都是对的” ——某人曾这样说。 真的如此吗?

这让我想到了 Handmade Hero 与《代码整洁之道》“OOP大佬”的论战—— 当性能掉50%时,是坚持 [Duck(), Cat()] is [Animal List] 还是手写两个for? 当然,有可能你完全用不了继承+实现了。如果差距拉到10倍呢? 你曾经以为,invokevirtual 就是最牛逼的优化吧?可是,它对游戏对象池一无所知(什么游戏没有vec2/vec3quat和对象池)。

🦄 🎉 哦不,invokedynamic 的函数级site优化也于事无补(说句实话:没人懂这个,除了谷歌D8R8的更新日志,也没人看)

只有数据流,而数据流,需要【声明式类型】甚至【F12式的性能反馈】。这与通用编译优化,就是一条歧路。一辆拖拉机换上了 F1 赛车的火花塞。 🚀

仅仅是这样的宏而已,脱离Types和GC写优化Pass,它会变成万行代码的地狱(或天堂。谁知道呢)

SIMD仅仅是GPU小蜜的优化,酷炫的光效又是另一个地狱(或天堂。谁知道呢),为什么他们抓不住重点。


把Vector2(xy)独立分配,或内嵌Px.Rect{int x,y},绝对是正确的。 [].push 绝对没错,LLVM也是学术热门,可是结果就是慢了。没人知道,没人关心,好像vec2/vec3quat和多态属性forEach是难以启齿的需求。 在今天能为120fps区分逻辑判定帧和渲染帧(FixedUpdate),也异常困难。 明明在玩家看来理所当然的事,因为一个“优雅命名”和deltaTime的耦合变成「2倍速移速0.5倍」这样

UpdateRules(dt) 或许比 FixedUpdate 这些准确的多,你还可以return true来表示玩家有运动(从而优化联机等需求)。为何有人敢把 if{} 也写在图形管道里?为何实现逻辑-渲染切分后不能录制回放和TTD? 锁帧30fps或许不像y2k那样致命,而且有修改器workaround,但你失去的是一系列配套的【可能性】,比如服务端秒封开挂

🥱 但这就像现代编程语言的 await .. 和阻塞操作放一个函数里一样,是不知道一些事情。就像把if{}和渲染写一起一样的怪事,像async..while(1)的怪事

不如我点破吧: vec2/vec3quat 不难猜到,new ECS 也不难优化,可是加上forEach和UpdateRules, 把三者结合起来设计,就成了送命题。

perf toy 是不会有错的,demosence 也不会卡,但是放在一起,去年的Game PC就有错了。 许多人的【数据结构】【算法】,是不运行的。我说的不是perf toy运行

#game #dev
你的Entity定义上是否包含vec2/v3quat和Verlet插值?Comp是否像CSS一样有层次且动态可组合?

entities.forEach(entity => entity.update()) 藏了太多 50% case 的共识。同类型复用(Arena)、SoA和多态分区存储?这些东西引擎层似乎都没见过,就像DOM有矩阵和Rects照样人人手搓Vec2

如果不包含xyz,它就是time/System。E仅仅是ID?这就像是把指针当成“对象”,把列表多态SoA优化泄露成了全新设计 SystemA(){elms.forEach(Component1)}, SystemB(){..Component2},这甚至是无师自通的。CSS的标签和类名,却支持区块与事件的自由分布

“幽灵是Elm不是Sys理论上更统一”让我想到了RISC-V的兼容性系统。就连query一个feat是否受支持的ABI,也是个feat。扫码电话亭的理论正确。

二层级CSS和SQL/ECS的关系式用起来不同。CSS可以通过classList改style,动态规则集也更解耦。ECS 不是一个无聊的内存池化,没想到在幽灵实体上命名都这样的错。就像UpdateRules(dt) 本来比 FixedUpdate 准确的多。



已经见怪不怪了啊…… 究竟在优化些什么,有资格说LLM不如自己懂 Code Arts.