Blog

OCCT PBR in WebGL 1.0

Forums: 

OCCT 7.5.0 has introduced PBR (physically-based rendering) metal-roughness material workflow in it’s real-time rendering engine. This feature brings more realistic rendering of metal materials and, which might be even more important, an industry-adopted material definition supported by many 3D applications (thanks to glTF 2.0 aka “JPEG for 3D” wide adoption).

PBR is considerably much more computationally intensive compared to old simplified approximations like Phong/Gouraud shading models, and involves a lot of optimization tricks to bring PBR to real-time. At the moment of development of PBR in OCCT, OpenGL 3.0 (released in ‘2008) with it’s mobile counterpart OpenGL ES 3.0 (specs released ‘2012) was considered a good baseline covering the majority of modern devices for PBR implementation. But what about WebGL?

Testing OCCT on Apple M1 (ARM64)

Forums: 

Apple has just released its first generation of ARM-based desktop computers. Macs used exclusively Intel CPUs since transition from IBM PowerPC in 2006, but now Apple believes that their own SoC, originally developed for mobile devices (iPhone and iPad), can replace Intel CPUs within the whole line of products in just 2 years!

Apple M1 SoC became the heart of several low-end devices within the ‘2020 line of products, but Apple promises an outstanding performance difference compared to previous Intel-based generation of products. This is difficult to believe! Could this be true?

Redesign of Progress Indicator

Forums: 

OCCT 7.5.0 introduces a redesigned progress indication API with the Message_ProgressIndicator class as an entry point. The redesign was focused on the following objectives:

  • Allow propagating a progress indicator to nested algorithms within multiple working threads.
  • Handle various inconsistencies and bugs in existing design (e.g. causing incorrect progress indication due to internal bugs).
  • Improve logic to detect and reveal API misuse (e.g. causing incorrect progress indication due to incorrect API usage).
  • Make the public API more straight-forward and clear for using in algorithms.

OCCT 7.5.0 beta version is available

Forums: 

Hello,

We are pleased to inform you that the new release of OCCT, 7.5.0, is ready for beta testing, and invite you to test this beta version in your applications.

Use the commit tagged "V7_5_0_beta" in the Git repository for this testing. Alternatively, you can use the complete source archive or Windows installer including ready-to-use binaries built with VS 2017.

PBR in OCCT 3D Viewer

Forums: 

Forthcoming OCCT 7.5.0 release extends its real-time rendering engine with a PBR (physically-based rendering) mode. OCCT implements PBR metal-roughness material workflow described by core glTF 2.0 specifications and also includes glTF data exchange components. New functionality opens a door to a new level of realism and visual quality of displayed models, and improves interoperability across various 3D engines supporting the same material workflow.

OCCT 3D Viewer becomes sRGB-aware

Forums: 

Before talking about sRGB, lets figure out what was wrong with old OCCT 3D Viewer. Take a look onto a pair of screenshots:

Sphere lighting before (left) and after (right) switching to sRGB-aware renderer.

The left image demonstrates a soft transition of a light into a shadow, while the right one shows more rapid transition. Left image might look softer, but which one is closer to real life?

Improved Mesh Edges Presentation

Forums: 

Mesh displayed in 3D Viewer may come from different sources - imported from external file (glTF, JT, STL, PLY, OBJ), computed for analytical BRep geometry by BRepMesh (part of OCCT) and ExpressMesh (OCC component) algorithms or generated directly by application code.

The mesh is usually displayed shaded, but such a presentation is not suitable for analysis of mesh structure. In many cases, application developer needs other mesh presentations to locate issues (too many details, not enough details, local deviations, etc.) and make corrections based on analysis results (adjust mesh generation or export parameters).

In this case, mesh edges presentation becomes very helpful.

Draw Harness test case for Mesh Edges (Geometry Shader).

Refactoring of BRepMesh

Forums: 

We are glad to inform the community of Open CASCADE Technology about a complete overhaul of BRepMesh component that is waiting for release in the upcoming 7.4.0 version. This overhaul, constrained by the requirement to keep non-regression of test cases collected during the last 20 years, took a while. In the end, the entire component has gained a new appearance. The new architecture simplifies the process of mesh generation over OCCT's BRep models and enables processing of some corner cases that were hard to handle before.

OCCT 7.3.0 beta version is available

Forums: 

Hello,

We are pleased to inform you that the next release of OCCT, 7.3.0, is ready for beta testing, and invite you to test this beta version in your applications.

Use the commit tagged "V7_3_0_beta" in the Git repository for this testing. Alternatively, you can use either complete source archive or Windows installer including ready-to-use binaries built with VS 2010.