jayli / jayli/mc-lite

不断完善的提示词

Open
#35 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
1
Forks
0
PR merge metrics
No merged PRs in 30d

Description

```
❯ /clear
⎿  (no content)

❯  /speckit.specify 现在有一个问题,就是如果一个实体的面积太大,比如
UglyHouse,边界会超过 Chunk 的范围,这时如果实体跟 Chunk
一起渲染时,超出Chunk范围(16x16)的区域就会被剪裁掉,原本Tree、Tank、UglyHouse
等实体是在地表上生成可跨区域的,这时就会出现奇怪的剪裁边界,导致实体渲染不完整,请问怎
么解决这个问题。

补充一些信息:ff7e6d0cf2b2a072de427cbfad61cb70e8096f99
这次提交试图修复跨区(Chunk)渲染实体(entities)时视觉上渲染出来,但跨区(Chunk)的部
分方块玩家可以穿模的问题。修复完之后是跨区的方块直接不显示了。没有达到我要的效果,即en
tities跨区渲染时也可以正常渲染的效果。

我刚让你试了一下完全重构掉实体的渲染逻辑,即实体的渲染和Chunk的渲染完全分开,这样做引
入的bug比较多,毕竟对底层渲染逻辑有大的改造。最后也没有成功。我想换一个思路,还是基于
现有架构优化来修补这个问题,请你参照最近的几次提交,172957322b65ef05a5ef0419b91f248ff9
af2345,3332432606d5ebf4f77f8747ed1dd4f40c1f8fbf和29516a4c97cb624e3da29ba06cad1d5d4788
a810等这几次提交都是试图修复跨区方块穿模的问题。我提供一个思路,那就是每个Chunk的渲染
正常进行,在渲染每个Chunk的方块的时候,先检查其他相邻的Chunk渲染时跨区的方块的位置,如
果某个位置已经被渲染了方块,比如leaves跨区了,那么这时当前Chunk在这个位置就不再渲染方
块了(包括空气方块),而保留原来的leaves方块,这个方块要跟本区Chunk渲染的方块一样有碰
撞、能参与Face culling 、instancedMesh 和 后台 consolidation
等优化(其实只要正确渲染,方块,没有重叠,特别是没有跟空气方块重叠就可以)。请你思考这
个思路是否可行,如果可行,按照这个方向进行优化改造。
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by comparing the current chunk and entity rendering paths with commits 172957322b65ef05a5ef0419b91f248ff9af2345, 3332432606d5ebf4f77f8747ed1dd4f40c1f8fbf, 29516a4c97cb624e3da29ba06cad1d5d4788a810, and ff7e6d0cf2b2a072de427cbfad61cb70e8096f99. Done means large entities such as UglyHouse, Tree, and Tank render across 16x16 chunk boundaries without clipping or overlapping blocks, while preserving collision, face culling, instancedMesh, and consolidation behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
computer-graphics, game-dev
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.