Masthead 是一个开源的出版平台,采用 Elixir 和 Phoenix LiveView 构建。它最初是为了更简单地管理我个人博客的 Hugo 部署而开发的,后来发展成为一个支持多租户、自定义域名、主题和自托管的综合平台。
返回首页
最新
你好,在过去的一个月里,我对ECS(实体组件系统)学习了很多。
我目前正在从零开始开发一个机器人模拟器(使用Python和Raylib),由于缺乏游戏开发经验,我采用了“完全面向对象编程”的方式。我的场景对象(SceneObject)有很多继承的接口(例如,Collidable、Movable等),这些接口在运行时被继承并固定。
主循环不可避免地变成了:
```python
for scene_object in sim.scene_objects:
scene_object.update(...)
for scene_object in sim.scene_objects:
scene_object.draw(...)
```
结果发现,如果场景对象数量很多,这可能会成为瓶颈,因为计算机喜欢连续的内存来进行缓存、物理计算/数学向量化等。
最近我学习了更多关于ECS的知识,开始在一个沙盒环境中进行一些实验,将update()函数转变为ECS。我的想法是将数据存储在列式的numpy数组(组件)中,并进行许多数据结构优化,以便快速查询场景对象和快速访问,例如:
```python
qr = scene.query(HasMotion, HasPosition) # 查询结果像一个形状为(N, ...)的numpy数组
qr.position += ... # 像numpy一样操作/向量化
```
无论如何,这个独立库只需要Python和numpy。Raylib仅用于渲染,但原始数据结构并不需要它。
我希望能得到一些反馈,比如它缺少什么,或者在模拟器开发过程中我可能会遇到的陷阱。
作为一个小插曲:我把Claude当作“工程经理”,我自己编写代码,它负责代码审查、任务管理和测试(对于边缘案例非常有用)。
[1] [hytale的ECS视频(适合初学者)](https://www.youtube.com/watch?v=qglU107_DA4)
[2] [Casey Muratori关于游戏行业第一个ECS的最新视频](https://www.youtube.com/watch?v=73Do0OScoOU)
从小我就被开了兴奋剂来“治疗”严重的注意力缺陷多动症(ADHD)。当时我大约7岁,根本不知道发生了什么,也从未真正质疑过这一切。快进18年:经过大量的自我反思,我很高兴地说我并不处于我想要的状态。
兴奋剂是有代价的。
我逐渐意识到,患有ADHD的人通常是:
- 观察力强
- 社交能力好
- 通才
我也注意到自己是:
- 专才
- 僵尸
- 反社交
“锁定”= 专才。
我讨厌专业化。它很脆弱。历史上,通才一直占据主导地位。企业家是通才。我想成为一名企业家。
我现在在一份工作中,软件工程师。我常常在想,如果我停止使用兴奋剂,我该怎么办?我对自己现在的生活完全不满意。我会找到摆脱这种状态的方法。
我并不是一个内向的人,但我却像一个内向者一样成长。这种感觉很孤独,看到别人社交却奇怪地感到格格不入。
我通过反复试验确认了这一切。停止使用兴奋剂,再重新开始。
在20多岁时发现自己与想象中的完全不同,真是一种奇怪的体验。
当你第一次以原始的视角看待世界时,它变得美丽。食物的味道变得美妙。时刻变得神奇而强大。让人发笑并进行深入交谈的感觉令人愉悦。我不相信有很多人能如此突然地体验到这种差异。
我创建Manob是因为我在每个主要社交媒体平台上都遇到了相同的挫败感:一个我无法控制的动态信息流、我无法信任的内容,以及一种感觉,即我(我的用户数据)是产品,而不是用户。
我与人们讨论了这些想法和担忧,并加入了我的个人观察。于是我构建了这个平台:
- 仅提供按时间顺序排列的动态信息流。没有排名,没有算法洗牌。你关注的人,所有用户的所有帖子你都能看到,或者选择查看来自朋友、你关注的页面和你参与的群组的帖子。
- 内置的事实核查和偏见检测,适用于文本、图像和视频。通过人机结合的方式,AI检测、分析和审核帖子,所有有争议的审核决定都由人工根据一套已发布的原则进行审查(不仅仅是个人判断)。
- 每个聊天采用AES-256加密。我们设计了一种方式,目前如果某个聊天被攻击并受到损害,不会对其他聊天或平台产生任何影响——这项功能正在不断改进,安全性是我的首要任务。
- 目前没有广告。你的数据从未被出售或共享(少量数据以加密字符串的形式存储)。
- 内容层内置儿童安全过滤。
- 具有匿名模式,以便讨论敏感话题。
- 内置新闻动态。
审核系统旨在不断发展;它更像是一部宪法而不是规则手册。原则是固定的,但可以随着平台的成长和严重案例的出现而进行修订。目标是尽可能准确地检测,系统性地处理中立性声明,并继续前进。
我仍在努力寻找盈利模式。我在考虑基于查看页面内容的上下文广告,而不是基于你的行为档案。此外,像招聘公告板和商业工具等其他功能也是一个选项。目前这些功能尚未上线,老实说,我仍在摸索中。
该平台目前已经上线,拥有一小部分活跃的早期用户社区。我是独自一人构建这个平台。
我很乐意回答你的问题/反馈/建议……
www.manob.bd