diff --git a/cg/blender/index.md b/cg/blender/index.md index 69be1e5..411a70e 100644 --- a/cg/blender/index.md +++ b/cg/blender/index.md @@ -15,6 +15,8 @@ build_xxx\bin\Release\blender.exe // 运行blender ``` 参考[building blender options](https://wiki.blender.org/wiki/Building_Blender/Options) +- [The official Blender project repository](https://projects.blender.org/blender/blender) + ## 源码分析 分析的思路流程,先大量阅读一些文档,特别是设计架构上的一些认识,最后使用万能的大法 diff --git a/cg/image/tool.md b/cg/image/tool.md index 34e2496..6e6c901 100644 --- a/cg/image/tool.md +++ b/cg/image/tool.md @@ -44,6 +44,14 @@ oritentation horizontal(normal) - [临时1](https://juejin.cn/post/7044561761747337223) +## [tev — The EXR Viewer](https://github.com/Tom94/tev) + +High dynamic range (HDR) image viewer for graphics people + +Image viewer and comparison tool for graphics people. + +- [键盘快捷键可视化网页](https://keycombiner.com/collecting/collections/shared/f050cc02-f23a-425c-b032-b4c3659c7ef4/) + ## GIMP ### 抠图 diff --git a/cg/mesh/mesh.triangle.md b/cg/mesh/tangnent.md similarity index 86% rename from cg/mesh/mesh.triangle.md rename to cg/mesh/tangnent.md index d1272e1..3dc9d86 100644 --- a/cg/mesh/mesh.triangle.md +++ b/cg/mesh/tangnent.md @@ -1,7 +1,5 @@ # 三角面片 -- [重新审视褶皱表面的模拟](http://image.diku.dk/projects/media/morten.mikkelsen.08.pdf) - ## Normal ### threejs @@ -121,10 +119,22 @@ normal = normalize( tbn * mapN );
MikkTSpace切线的数学推理 -MikkTSpace的方案成了事实上的标准,blender就用它来生成Normal Mapping的,光照计算中也是一个非常角色。 -MikkTSpace生成tangent space即使改变了点索引,面的顺序,删除primitive等等都不影响且对triangles和quads都支持的。 +MikkTSpace的方案成了事实上的标准,是Normal Map和光照计算中也是一个非常角色。 +MikkTSpace生成tangent space即使改变了点索引,面的顺序,删除primitive等等都不影响且对triangles和quads都支持的。事实上使用的有 +- [blender,blender就用它来生成Normal Mapping](https://projects.blender.org/blender/blender/src/branch/main/intern/mikktspace) +- xNormal +- Unity +- Subtance +- [Unreal Engine](https://github.com/EpicGames/UnrealEngine/tree/release/Engine/Source/ThirdParty/MikkTSpace) +- 3D Coat +- [Houdini plug-in bringing mikktspace library ](https://github.com/teared/mikktspace-for-houdini) 顶点必须具有属性:位置Position,法线Normal,纹理坐标UV
+ +### [论文--重新审视褶皱表面的模拟Simulation of Wrinkled Surfaces Revisited](http://image.diku.dk/projects/media/morten.mikkelsen.08.pdf) + +- wrinkled surface皱折面 +- normal mapping is almost as common as texture mapping and directly supported in a wide range of graphics tools. However, normal mapping is hard to get right without following a strict set of rules. 正确的显示一定是约束在一些规则内才可以 A wrong implementation can lead to discontinuities in the shading. \ No newline at end of file diff --git a/cg/threejs/use.md b/cg/threejs/use.md index e78781f..8aa56cc 100644 --- a/cg/threejs/use.md +++ b/cg/threejs/use.md @@ -1,5 +1,12 @@ # 问题集 +## model + +### stl分割 + +stl可以分割,是因为保证了点的离散性,重叠的可忽略,现实中也可以让其存在,再做特殊处理 +自己感觉到恐惧是因为把限制条件放开了,也是没有实际参与处理过,也是想太多的问题限制前行。 + ## render view with offset 2024-8-16 diff --git a/cg/tools/galacean.md b/cg/tools/galacean.md index cf848b5..1d0ff2c 100644 --- a/cg/tools/galacean.md +++ b/cg/tools/galacean.md @@ -1,5 +1,6 @@ # [Galacen](https://galacean.antgroup.com/engine/) -阿里系下的一个webgl引擎,号称性能很好,研究一下源码看看核心的功能 -分析一下shader的代码逻辑 +阿里系下的一个webgl引擎,号称性能很好,研究一下源码看看核心的功能,它得特点有 +- 使用了entity-component模型,system放在了component中实现,与threejs的渲染流程的差异 +- 分析一下shader的代码逻辑 diff --git a/cpl/language.md b/cpl/language.md index 8b2f224..1b99519 100644 --- a/cpl/language.md +++ b/cpl/language.md @@ -70,3 +70,8 @@ logic 指的就是 functions,logic 和 data 分离,就是 C 时期的 functi class 抽象的是想法,而不是一堆数据。private 和 public 访问控制分离了抽象层次,private 里面应该放的是 data,public 里面应该放的是 idea。public 里面的接口要对人,而非对数据,要表现有关抽象的意义,而不是有关抽象的实现。 trivial getters/setters 并没有使接口更安全,只是把对于数据的抽象转移到了接口上,这样的封装没有体现任何抽象的意义,也没有体现任何数据间的联系,未能施展 OOP 的 class 概念和访问控制能力。那为什么还要用 class 呢? + +## 参考 + +- [Promises/A+, An open standard for sound, interoperable JavaScript promises—by implementers, for implementers.](https://promisesaplus.com/) +- [core analyzer -- A power tool to understand memory layout](https://core-analyzer.sourceforge.net/index_files/Page525.html) diff --git a/index/computerScience.md b/index/computerScience.md index 2a4b670..ef4fd2f 100644 --- a/index/computerScience.md +++ b/index/computerScience.md @@ -32,9 +32,6 @@ - [hash](/cpl/data.structure/hash.md) - [LRU](/cpl/data.structure/LRU.md) - [树形结构](/cpl/data.structure/Tree.md) -### 相关参考 -- [Promises/A+, An open standard for sound, interoperable JavaScript promises—by implementers, for implementers.](https://promisesaplus.com/) -- [core analyzer -- A power tool to understand memory layout](https://core-analyzer.sourceforge.net/index_files/Page525.html) ## ComputerGraphics @@ -56,7 +53,7 @@ ### 网格 - [HalfEdge半边结构](/cg/tools/half-edge.md) - [网格划分](/cg/mesh/mesh-generation.md) -- [三角面片](/cg/mesh/mesh.triangle.md) +- [切线](/cg/mesh/tangent.md) - [NURBS](/cg/mesh/NURBS.md) - [曲线](/cg/tools/curve.md) - [几何](/cg/geometry.md) diff --git a/web/library.md b/web/library.md index d6e3b72..ce74ffd 100644 --- a/web/library.md +++ b/web/library.md @@ -89,6 +89,12 @@ With PartyKit, you can focus on building multiplayer apps or adding real-time ex ## 展示类 +### [jsPDF](https://github.com/lmj01/jsPDF/tree/master) + +Client-side JavaScript PDF generation for everyone. + +- [paper size打印纸张大小](https://www.papersizes.org/a-paper-sizes.htm) + ### jszip ```javascript