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
AlexandruPopovici
99e9e8c36f
Fixed some issues with node conversions and geometry conversions. Added auth token if exists to the object loader in sandbox. Remove all old code from Converter. Only the '...toNode' conversions remain. Tested some more
2022-06-06 17:48:05 +03:00
AlexandruPopovici
8c3fb6cb4c
Added inherited transforms for all objects within block instances
2022-06-03 19:44:11 +03:00
AlexandruPopovici
cbdccb1ace
Merged with a lot of local stuff
2022-06-03 16:39:02 +03:00
AlexandruPopovici
fcea53ddd2
Implemented the concept of RenderTree which just extends the functionality of the general purpose WorldTree. Moved all geometry conversions to a seaprate source where no async, no fetches, no special things happen, with the intent of possibly moving this to a webworker in the future
2022-06-03 16:37:06 +03:00
AlexandruPopovici
59ad804227
working on tree parsing
2022-06-02 17:18:07 +03:00
Dimitrie Stefanescu
99e922cdd0
Merge branch 'main' into alex/viewer-redux
2022-06-02 12:01:13 +01:00
Gergő Jedlicska
67cb97a262
gergo/testCommentsGQL ( #775 )
...
* yarn first go
* fix frontend build cache loader
* yarn workspaces built server Docker
* build(yarn): add workspaces plugin config
* chore(package defs): clean package*.json -s
* chore(gitignore): ignore yarn error log
* build(yarn): update yarn lock
* build(preview-service webpack): add extra resolved path to preview service webpack config
because of yarn package hoisting, there are no package level node_modules folder anymore.
* build(docker): update dockerignore with yarn specific configs
* build(docker): update Dockerfiles for yarn workspaces utilization
* ci(circleci): update server test job to yarn
* ci(circle): disable cache restore
* ci(circleci): trying the node orb yarn-run
* ci(circleci): yarn-run again
* ci(circleci): disable node orb
* ci(circleci): change base node image for tests
* ci(circleci): add yarn cache
* ci(circleci): remove node install step
* ci(circleci): add server specific cache archives
* ci(circleci): test build and publish
* ci(circleci): change npm auth method to suit yarn
* ci(circleci): trying new builder image
* ci(circleci): another base image, maybe this works
* ci(circleci): force a specific docker engine version
* ci(circleci): add yarn version plugin and its changes
* ci(circleci): cleanup and remove temp branch config
* chore(package defs): moving from npm run to yarn
* explicitly specifying webpack4 as a frontend dep
* chore(package defs): replace npm with yarn everywhere
* docs(root readme): update with some yarn specific docs
* test(server comments gql): add wip server comments gql tests
* test(server comments graphql): add missing test operations and generate a bunch of testcases
* test(server comments graphql api): fix all authz test cases for comments
* test(server comments service): fix comments service failing test
* fix(tests): do not look inside
Co-authored-by: Fabians <fabis94@live.com >
Co-authored-by: Dimitrie Stefanescu <didimitrie@gmail.com >
2022-06-02 11:15:27 +02:00
Gergő Jedlicska
1d8ffac57a
update knex dependency chain ( #776 )
...
* chore(root): update packages
* chore(server + preview service): add pg-query-stream peer dependency
* build(dockerfiles): unify and update docker base layer to latest node lts
2022-06-01 10:25:09 +02:00
Gergő Jedlicska
142219dc4c
fix(helm chart): default create namespace to false, it interferes with our deployment setup
2022-05-31 10:24:39 +02:00
Gergő Jedlicska
1c234a86b2
gergo/hotfixes ( #785 )
...
* ci(circleci): publish npm packages with the implicit default `latest` tag
* feat(helm chart): add a conditional flag for creating k8s namespace in the helm chart
* fix(server package.json): fix cross-env variable string naming
fix #780
2022-05-30 19:40:20 +02:00
Gergő Jedlicska
1f5f5ef943
fix(preview service): there is no need to double promise a preview ( #782 )
2022-05-30 11:59:28 +02:00
Alexandru Popovici
9b81618f58
Manged to bundle a default hdri with the viewer. The clients can eith… ( #779 )
...
* Manged to bundle a default hdri with the viewer. The clients can either use the default one, or specify their own
* Added a comment describing why we're hiding the .exr behind a .png. Fixed some lint errors/warnings
2022-05-30 12:38:59 +03:00
Dimitrie Stefanescu
00c8ff8703
Merge pull request #781 from specklesystems/dim/angle-previews-fix
...
fix(frontend): corrects rotation direction
2022-05-30 08:15:52 +01:00
Dimitrie Stefanescu
21f3d396fb
fix(frontend): corrects rotation direction
2022-05-30 08:14:13 +01:00
Dimitrie Stefanescu
0ff34c383c
Merge pull request #778 from specklesystems/dim/angle-previews
...
3D previews fixes
2022-05-26 20:17:16 +01:00
Dimitrie Stefanescu
4608072a88
fix(frontend): adds bw filter and rotate guard
2022-05-26 20:05:48 +01:00
pre-commit-ci[bot]
70971152a0
[pre-commit.ci] auto fixes from pre-commit.com hooks
...
for more information, see https://pre-commit.ci
2022-05-26 15:35:17 +00:00
Dimitrie Stefanescu
e8bde06d7d
feat(frontend): implements stiched 3d previews
2022-05-26 15:53:21 +01:00
Dimitrie Stefanescu
d98a3c5d15
feat(previews): creates stiched frames previews
2022-05-26 15:53:01 +01:00
AlexandruPopovici
0853a5acb2
Fixed an issue with selecting lines which are inside block instances. However that still doesn't work properly because the actual geometry isn't getting tested at pick time due to some issues inside SelectionHelper
2022-05-26 17:41:06 +03:00
Fabians
b12d51463d
Merge branch 'alex/viewer-redux' of github.com:specklesystems/speckle-server into alex/viewer-redux
2022-05-26 16:55:58 +03:00
Fabians
be87f88ff6
viewer asset support
2022-05-26 16:55:09 +03:00
AlexandruPopovici
e43f7136b8
#746 Fixed some issues regarding selecting lines and the visual response looks
2022-05-26 16:03:52 +03:00
AlexandruPopovici
482862d896
Fixes regarding block instances and selecting stuff
2022-05-26 14:56:26 +03:00
AlexandruPopovici
c55f73185f
Merged with main. Fixed an issue with geometry baking
2022-05-26 11:46:19 +03:00
AlexandruPopovici
448ae95d8b
Added a sample hdr to the assets
2022-05-26 11:01:11 +03:00