47 Commits

Author SHA1 Message Date
Jarrett Johnson
4edf9aab84 PYMOL-4915 PYMOL-4964 PYMOL-4752: Fix Gizmo rendering with TMode3 2026-02-06 16:08:24 -05:00
Jarrett Johnson
a71b21233e Port fix: selection regression on macOS
Fixes #476
2025-10-29 14:47:01 -04:00
Jarrett Johnson
dc70a2f303 PYMOL-5234: Fix draw while using antialiasing_shader 2025-09-26 12:07:31 -04:00
Jarrett Johnson
9b9cd6fb7b Fix some drawing regressions 2025-01-10 22:19:29 -05:00
Jarrett Johnson
279ce3f870 PYMOL-5001: (Part Four) SceneMakeSizedImage Refactor 2025-01-04 20:58:58 -05:00
Jarrett Johnson
d188d36b11 PYMOL-5001: (Part Three) Further DrawBuffer refactor 2025-01-04 20:51:19 -05:00
Jarrett Johnson
0313aeba9d PYMOL-4365: Filter gizmo and selections from thumbnails and exports
Some other restructuring (SceneRenderWhich and SceneRenderOrder) to support this
2025-01-04 20:40:13 -05:00
Jarrett Johnson
4dd9a6c230 PYMOL-4483: Remove selection indicators from thumbnails 2025-01-04 20:13:17 -05:00
Jarrett Johnson
414c418515 Combine default_frame_bufferID and DRAWBUFFER0 into GLFramebufferConfig 2025-01-04 13:11:45 -05:00
Jarrett Johnson
3a0e962467 separate out fb draw/read 2025-01-04 13:09:02 -05:00
Jarrett Johnson
3248445fcf Replace Scene matrices with glm::mat4 2025-01-04 12:33:44 -05:00
Jarrett Johnson
ef9bcd85a1 Remove _PYMOL_IOS (Discontinued; prep for MVK) 2024-08-30 10:05:58 -04:00
Jarrett Johnson
83f11bc317 More Replace NULL with nullptr 2024-06-02 20:44:43 -04:00
Jarrett Johnson
fbfda4a257 Replace NULL with nullptr 2024-05-20 09:07:33 -04:00
Thomas Holder
f70c533d01 bg_gradient=2 grid mode 2023-01-04 00:01:43 +09:00
Jarrett Johnson
3d81f20dbf replace int by GridMode 2022-08-17 15:03:15 -04:00
Jarrett Johnson
91f3ead318 GridMode enum 2022-08-17 15:03:08 -04:00
Jarrett Johnson
53f1d78106 Abstract many C++ viewport calls 2022-08-17 15:02:29 -04:00
Jarrett Johnson
1b910b9641 fix LG compilation; clang format 2022-08-17 14:52:18 -04:00
Jarrett Johnson
8f14cee822 SceneRenderInfo and other misc render API changes 2022-08-17 14:50:48 -04:00
Jarrett Johnson
3ff4ec4b00 Decouple offscreen rendering logic from AA request 2022-08-17 14:47:23 -04:00
Jarrett Johnson
58730721d2 SceneRender.cpp clang format 2022-08-17 14:28:56 -04:00
Jarrett Johnson
6de35cd627 Initial pass of Scene Render refactor 2022-08-17 14:23:55 -04:00
Jarrett Johnson
74894e01da Generic CGO Render 2022-03-08 15:16:16 -05:00
Jarrett Johnson
83387d20a5 Camera-Event wrapper class 2022-02-22 16:23:23 -05:00
Jarrett Johnson
66de86cb52 SceneView encapsulation 2021-08-20 12:10:22 -04:00
Jarrett Johnson
07d7a790f0 Forward decls/Move headers to source 2021-08-20 11:24:10 -04:00
Jarrett Johnson
b184f73cce RenderContext enum class 2021-04-28 05:13:30 -04:00
Thomas Stewart
28705b0aa3 Enum class for SceneRenderAll 2021-03-26 13:45:24 +01:00
Jarrett Johnson
355c45d229 Place CObject in pymol namespace 2021-02-11 19:14:06 +01:00
Thomas Holder
0562e1ec18 Fix GCC 4.8 and Intel Compiler support
- Fix `pymol::string_format` with `pymol::zstring_view`
- Skip `std::is_trivially_copyable` for GCC 4.8
- Eliminate some compiler warnings

Closes https://github.com/schrodinger/pymol-open-source/issues/163
2021-02-01 12:38:43 +01:00
Thomas Holder
7833037c5e CGOOptimizeToVBO: Call CGOCombineBeginEnd
CGOOptimizeToVBONotIndexed and CGOOptimizeToVBOIndexed will
automatically call CGOCombineBeginEnd if the input CGO has Begin/End
operations. They will also set `use_shader` on the CGO.

Fixes `set cgo_debug; wizard demo, raster3d`

Eliminate various CGOFree calls by using unique_ptr.
2020-12-11 13:01:38 +01:00
Jarrett Johnson
1c26a96739 Named Renderpasses 2020-07-03 15:00:38 +02:00
Thomas Holder
a188383b2b refactor color picking, add cPickableThrough
cPickableThrough for transparency_picking_mode (spheres only so far)
2019-11-27 14:44:28 +01:00
Thomas Holder
276640cd29 Port EPAM's VR fork to PyMOL 2.4
Porting the essential parts of EPAM System's "openvr" branch to the
master branch.

Original authors:
Natalia Smirnova, EPAM Systems, Inc.
Pavel Smirnov, EPAM Systems, Inc.

Original fork:
https://github.com/epam/pymol-open-source/tree/openvr

Adjustments:
- Make feature optional with "--openvr" compile option
- Python 3 support
- Remove C++11 workarounds
- Exclude build system changes

Co-authored-by: Natalia Smirnova <Natalia_Smirnova@epam.com>
Co-authored-by: Pavel Smirnov <pavel_smirnov1@epam.com>
2019-11-11 00:50:01 -08:00
Thomas Holder
75f06a974e CObject function pointers -> virtual methods 2019-10-29 16:24:12 +01:00
Jarrett Johnson
8aa14325f8 post-process graphics class 2019-08-13 16:53:38 +02:00
Thomas Holder
d080bbdb7b remove obsolete code
Python module:

- pymol.embed

Preprocessor definitions:

- _PYMOL_ACTIVEX_OLD
- _PYMOL_MIN_GLUT
- _PYMOL_OLD_ACTIVEX
- _PYMOL_PRETEND_GLUT_FONT
- _PYMOL_SHARP3D
- _PYMOL_WX_GLUT
- PYMOL_ICC_LINUX
- HAVE_CONFIG_H
- aliased_int
- aliased_float
2019-08-13 16:25:34 +02:00
Jarrett Johnson
1dd567e9f4 ranged-for in scene_render 2019-08-13 16:21:21 +02:00
Jarrett Johnson
d78763dcb2 disable_current_shader function 2019-08-13 15:43:32 +02:00
Jarrett Johnson
85f1c308a6 smaa3 setting restored 2019-08-13 15:40:18 +02:00
Jarrett Johnson
c714e97092 SceneView class 2019-08-13 15:12:16 +02:00
Thomas Holder
37fdc2b57e restore ApproxRenderTime computation
got lost in 919236d469
2019-02-21 18:41:00 +01:00
Thomas Holder
5e04325863 cleanup (local/unused function declarations) 2019-02-06 15:43:14 +01:00
Jarrett Johnson
fde67f2d9b PYMOL-3098 ScenePickVLA Refactor 2018-11-15 16:44:02 +01:00
Jarrett Johnson
b02d002026 PYMOL-3104 Block II Refactor 2018-11-15 16:26:35 +01:00
Thomas Holder
f21c61958e Graphics refactoring, ported from Incentive PyMOL 2018-07-03 20:19:12 +02:00