[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-82633":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":15,"stars7d":16,"stars30d":17,"stars90d":15,"forks30d":15,"starsTrendScore":18,"compositeScore":19,"rankGlobal":9,"rankLanguage":9,"license":20,"archived":21,"fork":21,"defaultBranch":22,"hasWiki":23,"hasPages":21,"topics":24,"createdAt":9,"pushedAt":9,"updatedAt":25,"readmeContent":26,"aiSummary":27,"trendingCount":15,"starSnapshotCount":15,"syncStatus":28,"lastSyncTime":29,"discoverSource":30},82633,"CharacterController","BoundingBoxSoftware\u002FCharacterController","BoundingBoxSoftware","A character controller for Unity that covers many edge cases.",null,"C#",356,25,3,1,0,23,217,10,65.74,"MIT License",false,"main",true,[],"2026-06-12 04:01:38","# Pretty Good Character Controller\n\n## Description\n\nThis is a character controller for Unity that covers many edge cases where the built in character controller may fail.\n\n## Unique Features\n\n### Custom Physics Update\n\nThis project uses a Physics Manager script that tells physics when to update.  Usually physics is run at fixed time steps that are not the same as the games time steps.  This results in visual discrepencies in the movement of physics based objects and script updated objects.  Also if your game is running slowly, the physics may update multiple tiems per frame, which contributes to even more slowdown and even more physics updates per frame.  The Physics Manager script updates the physics at the begining of the frame using Time.deltaTime as the time step.  There are options to run multiple updates and slice the delta time it the frame rate gets low and options to set the max number of slices.  There is also options to trade multiple physics updates for an old school game slowdown.\n\n### Running In Update\n\nUsually it is advised to update physics objects in FixedUpdate so that the physics update can fix any issues you may have created.  A problem with this is that FixedUpdate runs before the physics update and what you end up with is the raw output of the physics.  What the character controller does instead is add corrections to the physics like moving the character up steps and applying world motion.  It tries its best to stop the character from being moved through any collision when making these corrections.  The only physics change is to the rigitbody velocity that does not change the position until th physics update on the next frame.\n\n### Rigidbody Core\n\nAt its core this character controller is a rigibbody.  It will interact with other rigid bodies in expected ways.\n\n### Ground Slope Estimation\n\nA triangulated mesh pattern of raycasts is used to esimate the ground slope based on multiple height points.  This means that geometry like stairs will be averaged into a slope for smooth traversal.\n\n## License\n\nThis project is licensed under the MIT License - see the LICENSE.md file for details\n","这是一个为Unity设计的角色控制器，旨在解决内置角色控制器可能遇到的各种边缘情况。项目采用C#编写，通过自定义物理更新机制来同步游戏与物理引擎的时间步长，从而减少视觉上的不一致性和性能问题，并提供选项在帧率降低时调整物理更新次数或牺牲部分物理精度以保持游戏流畅性。此外，它还支持在Update中运行而非FixedUpdate，以及基于刚体核心实现与其他刚体的自然交互，并使用三角网格模式的射线投射来估算地面坡度，使得如楼梯等复杂地形能够被平滑处理。适用于需要高度定制化物理行为和更精确控制角色移动的游戏开发场景。",2,"2026-06-11 04:08:48","CREATED_QUERY"]