Подписывайтесь на наш Telegram и не пропускайте важные новости! Перейти

Гайд Apex Legends Проекция FOV через ViewRender

Sloppy
Начинающий
Начинающий
Статус
Оффлайн
Регистрация
13 Фев 2026
Сообщения
251
Реакции
6
Парни, делюсь годнотой для тех, кто страдает с расчетами FOV. Нашел в рендере игры уже готовое значение cot(fov/2), которое хранится в view render. Использовать его максимально просто, так что пастеры, радуйтесь.

Простой дельта-угол:
Код:
Expand Collapse Copy
float c_vector_3f::calc_fov( const c_vector_3f& o ) const
{
 return math::rad_to_deg( std::acosf( std::cosf( math::deg_to_rad( o.x - x ) ) 
  * std::cosf( math::deg_to_rad( o.y - y ) ) ) );
}

Сама магия проекции:
Код:
Expand Collapse Copy
float engine::project_fov( float fov_deg )
{
    ImGuiIO& io = ImGui::GetIO( );
    float half_w = io.DisplaySize.x * 0.5f;
    float cot_half_fov = driver::read< float >( 
        reinterpret_cast< uintptr_t >( get_view_render( ) ) + 0xD0 );

    return half_w * std::tanf( math::deg_to_rad( fov_deg ) ) / cot_half_fov;
}

Кто уже пробовал внедрять это в свой external? Как полет, нет ли проблем с просадкой FPS при чтении из этого офсета? Делитесь результатами в треде.
 
Назад
Сверху Снизу