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

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

Sloppy
Начинающий
Начинающий
Статус
Оффлайн
Регистрация
13 Фев 2026
Сообщения
617
Реакции
16
Парни, делюсь годнотой для тех, кто страдает с расчетами 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 при чтении из этого офсета? Делитесь результатами в треде.
 
Назад
Сверху Снизу