PureBasic

BuildMeshLOD()

Синтаксис

BuildMeshLOD(#Mesh , NbLOD , Distance.f , ReductionValue.f)

Описание


Автоматически создает один или несколько уровней детализации ('LOD') для указанной Сетки (Mesh). Исходная Сетка автоматически заменяется на LOD-Сетку с меньшей детализацией, когда Сущность отображается дальше указанного расстояния от камеры. Если требуются более точные LOD-Сетки, вы можете использовать функцию AddMeshManualLOD()

Параметры

#Mesh Номер идентифицирующий используемую Сетку (исходную).
NbLOD Количество LOD-Сеток, которые необходимо создать для исходной Сетки.
Distance Минимальное расстояние от камеры, где будет использоваться первая LOD-Сетка вместо исходной Сетки. Для последующих LOD-Сеток расстояние вычисляется по формуле: 'Distance.f / Sqr(1-ReductionValue.f)'.
ReductionValue Значение 'редукции', применяемое для снижения детализации на каждый шаг, это значение от 0 (без снижения) до 1 (снижение на 100%).

Пример: CreateMeshLodLevels(Mesh, 3, 100, 0.75)
- Первое снижение детализации исходной Сетки будет на дистанции 100 единиц от камеры, число вершин делится на 4 (снижение детализации на 75%).
- Второе снижение детализации исходной Сетки будет на дистанции 200 единиц от камеры, количество вершин делится на 16.
- Третье снижение детализации исходной Сетки будет на дистанции 400 единиц от камеры, количество вершин делится на 64.

Возвращаемое значение

Ничего.

См. также

CreateMesh(), AddMeshManualLOD()

Поддерживаемые OS

Все

<- AddSubMesh() - Mesh Index - BuildMeshShadowVolume() ->