Skip to content

Commit 55f7f32

Browse files
committed
Upgrade CGE usage
1 parent bc8a5a0 commit 55f7f32

File tree

2 files changed

+14
-13
lines changed

2 files changed

+14
-13
lines changed

precompute/precompute_radiance_transfer.dpr

+10-4
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,12 @@ program precompute_radiance_transfer;
1919

2020
uses SysUtils, CastleUtils, CastleVectors, CastleSceneCore, X3DNodes, X3DLoad,
2121
CastleInternalSphereSampling, CastleColors,
22-
CastleInternalSphericalHarmonics, CastleParameters, CastleTimeUtils, CastleShapes;
22+
CastleInternalSphericalHarmonics, CastleParameters, CastleTimeUtils,
23+
CastleShapes, CastleInternalTriangleOctree, CastleRayTracer;
2324

2425
var
2526
Scene: TCastleSceneCore;
27+
OctreeVisibleTriangles: TTriangleOctree;
2628
Normals: TVector3List;
2729
SHBasisCount: Integer = 25;
2830
RaysPerVertex: Cardinal = 1000;
@@ -67,7 +69,7 @@ begin
6769
begin
6870
RayDirectionPT := RandomHemispherePointConst;
6971
RayDirection := PhiThetaToXYZ(RayDirectionPT, N);
70-
if not Scene.InternalOctreeVisibleTriangles.IsRayCollision(V, RayDirection,
72+
if not OctreeVisibleTriangles.IsRayCollision(V, RayDirection,
7173
nil, true { yes, ignore margin at start, to not hit V },
7274
nil) then
7375
begin
@@ -156,10 +158,11 @@ begin
156158
Parameters.Parse(Options, @OptionProc, nil);
157159
Parameters.CheckHigh(2);
158160

161+
OctreeVisibleTriangles := nil;
159162
Scene := TCastleSceneCore.Create(nil);
160163
try
161164
Scene.Load(Parameters[1]);
162-
Scene.Spatial := [ssVisibleTriangles];
165+
OctreeVisibleTriangles := CreateOctreeVisibleTrianglesForScene(Scene);
163166

164167
TimeStart := ProcessTimer;
165168

@@ -204,5 +207,8 @@ begin
204207

205208
SaveNode(Scene.RootNode, Parameters[2],
206209
'radianceTransfer computed by precompute_radiance_transfer: ' + S);
207-
finally FreeAndNil(Scene) end;
210+
finally
211+
FreeAndNil(Scene);
212+
FreeAndNil(OctreeVisibleTriangles);
213+
end;
208214
end.

visualize_spherical_harmonics/code/gameviewmain.pas

+4-9
Original file line numberDiff line numberDiff line change
@@ -99,15 +99,10 @@ constructor TViewMain.TMyShVisualization.Create(AOwner: TComponent);
9999

100100
procedure TViewMain.TMyShVisualization.LocalRender(const Params: TRenderParams);
101101
begin
102-
if (not Params.Transparent) and
103-
(true in Params.ShadowVolumesReceivers) then
104-
begin
105-
{ before every rendering clear Min/MaxSHValue, so that VertexColor can set them }
106-
MinSHValue := MaxFloat;
107-
MaxSHValue := -MaxFloat;
108-
SetSceneColors(Self, {$ifdef FPC}@{$endif}VertexColor);
109-
end;
110-
102+
{ before every rendering clear Min/MaxSHValue, so that VertexColor can set them }
103+
MinSHValue := MaxFloat;
104+
MaxSHValue := -MaxFloat;
105+
SetSceneColors(Self, {$ifdef FPC}@{$endif}VertexColor);
111106
inherited;
112107
end;
113108

0 commit comments

Comments
 (0)