From 40cf4bdaa29bf7ea81abd56dfb8bfc6a9c833180 Mon Sep 17 00:00:00 2001 From: lmj01 Date: Mon, 24 Jul 2023 08:46:40 +0800 Subject: [PATCH] update --- articles/2023/daily.md | 9 +++++++++ dev-note/cmake.md | 10 +++++++++- math/transform.html | 45 +++++++++++++++++++++++++++++++++++++++--- 3 files changed, 60 insertions(+), 4 deletions(-) diff --git a/articles/2023/daily.md b/articles/2023/daily.md index 8c5451b..7627e79 100644 --- a/articles/2023/daily.md +++ b/articles/2023/daily.md @@ -1,7 +1,16 @@ +## 2023-7-19 + +后台Java使用分布式ID,**雪花算法SnowFlake**,生成的是一个非常大的整数,在前端是没法直接使用这个数的,超出Number表示的精度范围 + ## 2023-7-7 给一个STL模型,对其数据进行连通区域的分割,分割成多个模型 +前端渲染可,是把数据传给GPU,要做编辑就需要缓存拓扑结构,这个与渲染的缓存数据的是有差异的,等他们的结果 + +2023-7-21 +别人写出算法来了,起始就是我心中有些知识没有打通,会阻碍我前进的想法。 + ## 2023-6-16 **布什内尔定律**,是游戏公司Atari的创始人,他提出,游戏的操作应该简单,一看就会,但是玩法应该保持挑战性,后人总结为“易于学习,难以精通” diff --git a/dev-note/cmake.md b/dev-note/cmake.md index ffaade4..b9bb939 100644 --- a/dev-note/cmake.md +++ b/dev-note/cmake.md @@ -1,6 +1,11 @@ # CMake -# VS-cmake +## cmd-tool + +cmake + + +## VS-cmake MSBuild命令行, 每个开关都有两种形式:-switch 和 /switch @@ -19,3 +24,6 @@ MSBuild.exe VTK.sln /t:Rebuild /p:Configuration=release MSBuild.exe INSTALL.vcxproj /p:Configuration=release ``` + +## 参考 +- [cmake常用命令](https://zhuanlan.zhihu.com/p/315768216) \ No newline at end of file diff --git a/math/transform.html b/math/transform.html index f381873..597f8bb 100644 --- a/math/transform.html +++ b/math/transform.html @@ -15,6 +15,9 @@

transform in render detail

  • Coordinate System
      +
    1. Object Space
    2. +
    3. World Space
    4. +
    5. Camera Space
    6. Screen Space
    7. NDC(Normalized Device Coordinate) space
    8. Raster Space
    9. @@ -44,17 +47,53 @@

      transform in render detail

      Coordinate System

      +
      +
      Object Space
      +

      + This is the coordinate system in which geometric primitives are defined. + For example, spheres in pbrt are defined to be centered at the origin of their object space +

      +
      +
      +
      World Space
      +

      + While each primitive may have its own object space, all objects in the scene are placed in relation to a single world space. + Each primitive has an object-to-world transformation that determines where it is located in world space. + World space is the standard frame that all other spaces are defined in terms of. +

      +
      +
      +
      Camera Space
      +

      + A camera is placed in the scene at some world space point with a particular viewing direction and orientation. + This camera defines a new coordinate system with its origin at the camera’s location. + The \(Z\) axis of this coordinate system is mapped to the viewing direction, and the \(y\) axis is mapped to the up direction. + This is a handy space for reasoning about which objects are potentially visible to the camera. + For example, if an object’s camera space bounding box is entirely behind the \(Z=0\) plane (and the camera doesn’t have a field of view wider than 180 degrees), + the object will not be visible to the camera. +

      +
      Screen Space
      -

      Screen space is defined on the film plane. The camera projects objects in camera space onto the film plane; the parts inside the screen window are visible in the image that is generated. Depth values in screen space range from 0 to 1, corresponding to points at the near and far clipping planes, respectively. Note that, although this is called “screen” space, it is still a 3D coordinate system, since values are meaningful.

      +

      + Screen space is defined on the film plane. The camera projects objects in camera space onto the film plane; + the parts inside the screen window are visible in the image that is generated. + Depth values in screen space range from 0 to 1, corresponding to points at the near and far clipping planes, respectively. + Note that, although this is called “screen” space, it is still a 3D coordinate system, since values are meaningful. +

      NDC(Normalized Device Coordinate) space
      -

      This is the coordinate system for the actual image being rendered. In x and y, this space ranges from (0,0) to (1,1) , with (0,0) being the upper-left corner of the image. Depth values are the same as in screen space, and a linear transformation converts from screen to NDC space.

      +

      + This is the coordinate system for the actual image being rendered. In \(x\) and \(y\), this space ranges from \((0,0)\) to \((1,1)\) , + with \((0,0)\) being the upper-left corner of the image. Depth values are the same as in screen space, and a linear transformation converts from screen to NDC space. +

      Raster Space
      -

      This is almost the same as NDC space, except the and coordinates range from to.

      +

      + This is almost the same as NDC space, except the \(x\) and \(y\) coordinates range from \((0,0)\) to \((resolution.x,resolution.y)\). +