Andy Zhuang

Members
  • Content count

    5
  • Joined

  • Last visited

About Andy Zhuang

  • Rank
    Newbie

Recent Profile Visitors

61 profile views
  1. Yes @Deltakosh When one line's endpoint snap to another line's endpoint, I want merge them at the joint point. Any ideas for this? Thanks.
  2. I want to draw 2D path (line, rectangle, curve, etc.) dynamically with mouse moving in Canvas2D. And can also modify the path's end points in the future. I have found how morph mesh in 3D space dynamically. But it seems that can be applied to Canvas2D's shapes. Now I remove the old shape and create a new one when need morph the old shape. But I am not sure it has performance issue, especially when morph path containing many vertexes. My code: http://www.babylonjs-playground.com/#NF6H0S Any better ways for this? Thanks.
  3. WebGPU is proposed by Apple’s WebKit team, and still under developing. It's ANGLE-like, and can reflect the designs of modern GPUs like Vulkan and Dx12. I believe it would become the standard API for Web graphics. Is it easy for Babylon.js from WebGL to WebGPU? Just want some discussions about this here:-)
  4. @Temechon Very appreciate your replay base on your own experience. Have your CAD-like product been online? Can you give the name or URL if I can take a look? About the dwg/dxf importer, we have other solutions. Maybe convert them to pdf/svg at the backend. Oh, that's great feature! This can save much time for me. I believe this would be higher performance than processing 2D object in 3D space. The feature may be the determining factor for our team to adopt Babylon.js.
  5. We are planning to start a new project to create a CAD product, which like A360. But we mainly focus on 2D drawings at first step. The product would display many line segments, circles/arcs and bezier curves. Also have many interactions to manipulate these geometries, for example, edit(move the end points), drag, select, highlight. We also have shape object to group some primitive geomtries and manipulations on the shapes. And we can display the shape with many instances. The different instance have different transform, different color / line width. And hope this can be accelerated through sharing the same geometry buffers(maybe other terms). Other functions: display image or pdf (use pdf.js) as the background, can import dxf/dwg. I did some investigation in Babylon.js and Three.js. And I am hesitating which I should adopt as our product's graphics engine. The below is my some conclusions base on my google searching. Three.js is designed targeting on general purpose. And as I know, A360 adopt Three.js as the graphics engine. It seems that Three.js is more appropriate for CAD-like product. But some people said that Three.js has more bugs and bad GC (garbage collection). Bablylon.js use TypeScript (This attract me, because our team also select it as the main language), and has strong GC, and maybe higher performance. However, Babylon.js is designed targeting game engine. I am not sure it is fit for our CAD-like product. Can anyone can point pros and cons of Babylon.js and Three.js for CAD-like prodcuts more detailed. Thanks very much.