# mycraft **Repository Path**: zzhicanfly/mycraft ## Basic Information - **Project Name**: mycraft - **Description**: 开发 类mincraft的 项目 - **Primary Language**: Rust - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-08-21 - **Last Updated**: 2022-08-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 设计思路 ## 基础 加载!! 首先有一个绑定了 一个可以移动的 Player 的 Entry 摄像机 可以随着移动 (暂时不加入 物理碰撞体) 开始的时候只是这个地方可以移动。并且可以知道它具体的的地方 在一开始 stepUp 的时候。 把 Player 所在的地方 一些范围以内的 块进行加载到实体中. 注意只有实体没有渲染 PRB 这样有个缓存的空间 比如加载的 区块实体的大小 100 _ 100 _ 100 的 数据, 而动态加载 的大小是 30* 30* 30 的数据 后续的优化可以 让 加载类型数据 可以渲染的线程异步。 完成 预加载。保证地图的无缝。 上面的内容是 第一个版本的能力。 !! 上面的方法是错误的!! 因为在 system 中每次都要 检查所有的区块进行绘制 导致的结果就是。 程序进入了 一直在计算中的情况!。 应该判断一下当前这个地方的状态 ## TODO - 动态绘制系统需要优化 - 需要一个生成地图的 服务 - 还需要一个查询地图的服务 - 一个可以 根据主摄像机 移动的 有物理引擎的 任务角色 ### 一些游戏机制的探讨 - 鼠标邮件可以打物品 但是 物品是有硬度的 只有硬度大于等于 的情况下才 对物体造成伤痕 - 所以是否可以破坏方块 和当前手上拿的东西有关系。 - 比如 石头的硬度 是 1 而树木的硬度 是 0.5 的话。是可以损坏木头的。 - 任何方块在 收到 打击后 如果硬度是大于当前方块的话 是会永久造成伤痕的。 - 而工具的 耐久度 也是和当前硬度 和 方块硬度有关系。 - 物品的交互是 在镜头检查后 E 交互的 - 一开始手是不能 撸树的!(或者说效率奇低)而要 和树叶交互 获取木枝来进行合成 - 开始石头也无法开采 而是要捡起地上的碎石! - 手是可以撸土的 - 一个方块获取 8 个土块。作为合成的元素。(捡起的石头 也是 完整石块的 1/8) ## 各个分支功能描述 - [V] feat01 基础的动态加载功能 - [V] feat02 根据地图加载插件进行加载 并且实现加载优化 - [ ] feat03 加载不同的纹理!! - [ ] (计划中) 地图生成算法 - [ ] (计划中) 人物基础操作,基础的物理模型