AlexandruPopovici
|
3ca2d08e18
|
#828 Implemented the SpeckleMesh which extends three's Mesh and corrects the raycasting implementation to work with the positions encoded as pairs of lows and highs
|
2022-07-27 21:46:03 +03:00 |
|
AlexandruPopovici
|
9e7c80bb4f
|
#828. Added controlled update and render loops which propagate throught the viewer library
|
2022-07-27 15:09:46 +03:00 |
|
AlexandruPopovici
|
f10dfdac43
|
#827 Implemented ghost material for points.
|
2022-07-26 23:35:30 +03:00 |
|
AlexandruPopovici
|
453e83e515
|
#827 Implemented the colored material (used when filtering by non-numeric properties) for lines as well.
|
2022-07-26 23:10:52 +03:00 |
|
AlexandruPopovici
|
53b309dca5
|
#828 Moved some old sources to legacy folder
|
2022-07-26 19:02:42 +03:00 |
|
AlexandruPopovici
|
e35c4ad35b
|
#828 Added proper vertex normal computation based off fp64 positions
|
2022-07-26 18:56:00 +03:00 |
|
AlexandruPopovici
|
2e0ddf6153
|
#828 Implemented the RTE improvements discussed in the blog post
|
2022-07-26 18:37:27 +03:00 |
|
AlexandruPopovici
|
e05af7eafe
|
#728 Removed all references to USE_RTE and THICK_LINES since we're always going to be using these implementaions
|
2022-07-26 11:01:38 +03:00 |
|
AlexandruPopovici
|
f706efc875
|
#828. Removed unused code from Geometry. Corrected the types for the position attribute underlying typed array. Removed duplicate code
|
2022-07-26 10:46:54 +03:00 |
|
AlexandruPopovici
|
30e985be4a
|
#827. Implemented non-numeric filter-by properties support. Added this functionality to the sandbox as well.
|
2022-07-22 15:35:34 +03:00 |
|
AlexandruPopovici
|
92009018fc
|
#827. Generalizes all gradient based filtering. We can now filter by any property which is numerical from the sandbox. Implemented ramp texture generation. We will need this to generate the ramp texture for discreet colored filters like filterByType, filterByFamily ,etc
|
2022-07-22 01:03:01 +03:00 |
|
AlexandruPopovici
|
c238cdaa07
|
#827. Added min/max values when filtering by volume. Some changes to the filtering implementation to avoid redundant tree searches
|
2022-07-22 00:03:35 +03:00 |
|
AlexandruPopovici
|
fdc550a38a
|
#827 Implemented gradient based filtering using ramp texture and per vertex ramp texture index. Implemented filtering by volume in the sandbox, using the gradient filter
|
2022-07-20 23:59:11 +03:00 |
|
AlexandruPopovici
|
dbd3763a5a
|
#827 Added the possibility to visually display the scene's batches as well as to select any object by holding the ctrl key and it will isolate it's entire batch, not just the object. These will be useful for debbuging
|
2022-07-18 23:43:08 +03:00 |
|
AlexandruPopovici
|
fdd03ef821
|
#828[Debt] Added support for vertex colors on meshes that specify it
|
2022-07-18 17:00:01 +03:00 |
|
AlexandruPopovici
|
a4fa7bb4dd
|
#811 Implemented conveniene method for isolating objets visually, where all other objects are ghosted, like the effect should look like. Fixed an issue with Brep conversion
|
2022-06-28 11:41:45 +03:00 |
|
AlexandruPopovici
|
a206176779
|
Switched to ACES tonemapping and increased the exposure a bit
|
2022-06-27 19:11:25 +03:00 |
|
AlexandruPopovici
|
65d5aa6659
|
#811 Added a material for the gradient filter, so we have multiple filter materials to apply. However th gradient material is not fully implemented. It can only do a single solid color. We'll implement the actual gradient of colors in the future
|
2022-06-27 19:00:20 +03:00 |
|
AlexandruPopovici
|
51596d81b4
|
Fixed some remaining issues with the filtering API. Made transparent materials to not write to the depth buffer so we don't get false depth test fails. We will see in the future if we want to treat transparent objects differetly, however for now it's going to be fine
|
2022-06-27 18:51:52 +03:00 |
|
AlexandruPopovici
|
7840591672
|
#811 Separated batch aut filling draw ranges as a separate function. This will allow sequential calls to set different draw ranges with different materials sequentially for the filtering API
|
2022-06-24 16:44:31 +03:00 |
|
AlexandruPopovici
|
923e835c54
|
#811 Added the the unload functionality, so we can load/unload stuff in the sandbox. It's currently a bit leaky but we'll fix that. Also we currentyl don;t support multiple paralel streams to be loaded in. I first want to make sure things work properly for 1 stream before having multiple at the same time
|
2022-06-24 14:20:27 +03:00 |
|
AlexandruPopovici
|
d29d2d464c
|
#811 Started working on a debug API for filtering inside the viewer. This API will be used by the upcoming FilteringManager to do the visual work
|
2022-06-24 00:41:24 +03:00 |
|
AlexandruPopovici
|
8f44b86c79
|
#811 Minor addition
|
2022-06-23 23:01:51 +03:00 |
|
AlexandruPopovici
|
136f5f6076
|
#811. Adjusted the near and far clipping planes of the shadowmap camera using the same approach as in the previous commit. This also ever so slightly improved the quality of the shadomap
|
2022-06-23 16:24:18 +03:00 |
|
AlexandruPopovici
|
ae3f73e28f
|
#811 Implemented dynamic computation for the default sun's shadow camera frustum based on the scene's bounding box. This is important for being efficient with shadow map texture space -> better quality shadows. It's still using AABB so the resulting frustum will still be larger than the minimum posible one
|
2022-06-23 15:30:08 +03:00 |
|
AlexandruPopovici
|
42844960aa
|
#811 Integrated section box functionality, camera projection switching and fixed a few issues with the new viewer
|
2022-06-21 17:11:58 +03:00 |
|
AlexandruPopovici
|
f73384e66f
|
#811 Integrated double-click to zoom, and zoom extents with the new viewer. Currently I'm using old existing code just for the sake of less regression, but will revisit it in the future
|
2022-06-21 15:47:24 +03:00 |
|
AlexandruPopovici
|
499653d983
|
#811 Started taking the axe on a lot of legacy code which became obsolete after redux Stage 2. Turned ViewerObjectLoader to typescript and started moving a lot of stuff from viewer to a new class, SpeckleRenderer, which will centralize and handle a lot of stuff
|
2022-06-21 00:58:20 +03:00 |
|
AlexandruPopovici
|
6383804199
|
#783 Added optional srgb->linear transformation of vertex colors. This is used by point clouds, and possibly any other types which want vertex colors
|
2022-06-20 16:55:22 +03:00 |
|
AlexandruPopovici
|
11a429f9ca
|
#783 Implemented Point and PointCloud speckle type support for batching and everything else.
|
2022-06-20 16:39:51 +03:00 |
|
AlexandruPopovici
|
d4c0495860
|
#783. Fixed a misplaced 'if' inside the mesh batch draw material ranges function. Added HideAll draw range constant. We're using this when we want to hide an entire batch so that three.js does not do all the buffer binding, material and state switching for batches that have a draw range of 0-0. Apparently three.js doesn't skip all the GL commands automatically for meshes with 0 draw range
|
2022-06-18 00:38:41 +03:00 |
|
AlexandruPopovici
|
dad9acb3e9
|
#783 Implemented visibility ranges for line batches
|
2022-06-18 00:07:56 +03:00 |
|
AlexandruPopovici
|
60536592a4
|
#783 Implemented visible range for batches. Required when wanting to isolate/hide/don't show stuff. Only implemented it for the mesh batch type for now. Line batch is next
|
2022-06-17 19:07:10 +03:00 |
|
AlexandruPopovici
|
c7a2390bf3
|
#783 Implemented multi selection via multiple draw range with automatic fill of groups. Implemented selection of multiple objects when clicking something in the world, if that object is part of a whole and it needs to be selected together with others. It's not perfect yet, I;ve seen some bad selections, but will fix that soon
|
2022-06-17 17:28:39 +03:00 |
|
AlexandruPopovici
|
d508eb6d5b
|
#783. Implemented separate materal draw ranges for the line batches. Added the Batch common interface and separate the MeshBatch from the LineBatch, both implementing the Batch interface. Selection now works properly for both meshes and lines
|
2022-06-16 19:40:32 +03:00 |
|
AlexandruPopovici
|
4d764c166c
|
#783 Implemented line batch colouring using an additional InstancedBufferAttribute where each line segment can have it's own color. This way we can know which subset to color differently. Transparency is also supported in theory, but will get to that later on. Also started to split the mesh batch from the line batch since they will be conceptualyl different, but share a common contract
|
2022-06-16 17:19:41 +03:00 |
|
AlexandruPopovici
|
6084a4849c
|
#783 Implemented picking for the batched meshes
|
2022-06-15 17:30:04 +03:00 |
|
AlexandruPopovici
|
059893da30
|
#783 Fixed an issue with some types of lines and the current batching system which made the batched lines look really broken
|
2022-06-15 14:44:44 +03:00 |
|
AlexandruPopovici
|
1846554778
|
#783 Working on picking and fixing some issues which arose a few days ago regarding some types of lines when I switched to full-tree represenation
|
2022-06-15 11:13:25 +03:00 |
|
AlexandruPopovici
|
2157631def
|
#783 Fixed an issue where some meshes were left out of batching. Added transparency to materials that require it. Seems to be working fine so far, though we might see issues in the future]
|
2022-06-14 13:01:04 +03:00 |
|
AlexandruPopovici
|
ae46d0ce5e
|
#783 Fixed an issue with batching a single mesh at the end of the batch list. Geometries can now inherit render materals/display styles from their entire hierarchy
|
2022-06-14 01:26:16 +03:00 |
|
AlexandruPopovici
|
b5c6e4ac37
|
#783 Fixed RTE not working with batched line segments
|
2022-06-13 22:42:06 +03:00 |
|
AlexandruPopovici
|
6cf41f64c4
|
#783. Some changes regarding materials, default materials and material hashes
|
2022-06-13 22:26:41 +03:00 |
|
AlexandruPopovici
|
bee051ff49
|
#783. Implemented line batching. This is actually a big change, since the prevous viewers did not have line batching and it was causing huge performance problems with having to render thousands of lines separately. As expected, batching lines did require a bit of a change to how we render the actual line geometries, but managed to get most of them in. Still need to account for high/low buffer splitting for the individual segments.
|
2022-06-10 17:08:58 +03:00 |
|
AlexandruPopovici
|
757cc7e666
|
783. Continued working on batching. Got first batches to render on the screen. A bit messed up, but it's something
|
2022-06-10 00:08:03 +03:00 |
|
AlexandruPopovici
|
f2c11abb23
|
#783. Started working on the Batcher will will organize the render nodes into batches that minimize draw calls neatly
|
2022-06-09 18:02:13 +03:00 |
|
AlexandruPopovici
|
386500be7a
|
#783 Removed the concept of nested nodes. It was complicating matters unnecessarily. Any nodes inside other nodes display values are chidlren of that node now.
|
2022-06-09 13:09:55 +03:00 |
|
AlexandruPopovici
|
665fda37ae
|
#783. Started working on materials and their render tree interaction
|
2022-06-09 00:10:10 +03:00 |
|
AlexandruPopovici
|
36da0e38e2
|
#783 Fixed an issue where the display values for non-geometry nodes was ignored
|
2022-06-07 14:29:49 +03:00 |
|
AlexandruPopovici
|
ab353fc87c
|
#783 Fixed an issue with transforming hierarchies of nodes inside Block Instances. Fixed an issue with Spirals not being interpreted as their display value (default behavior). Cleaned up Converter. It's nice and short now
|
2022-06-06 22:47:16 +03:00 |
|