zoukankan      html  css  js  c++  java
  • Tracer类定义

    这个类主要是用于检测光线是否穿过球体。是核心,所有的碰撞都继承于这个类,书上也阐述了很多。详细就看书。

    类定义:

    #pragma once
    #ifndef __TRACER_HEADER__
    #define __TRACER_HEADER__
    
    #include "../../Types.h"
    
    class World;
    class Ray;
    class RGBColor;
    
    class Tracer {
    public:
    	Tracer(World* wr_ptr);
    	virtual ~Tracer();
    	virtual RGBColor trace_ray(const Ray& ray) const;
    	virtual RGBColor trace_ray(const Ray ray, const integer depth) const;
    protected:
    	World* world_ptr;
    private:
    	Tracer();
    };
    #endif  

    类实现:

    #include "pch.h"
    #include "tracer.h"
    #include "../utilities/world.h" //这个文件最后实现,因为时刻都在扩展,所以World类时刻都在修改
    
    Tracer::Tracer(World* wr_ptr) :world_ptr(wr_ptr) {}
    
    Tracer::~Tracer() {}
    
    RGBColor Tracer::trace_ray(const Ray& ray) const {
    	return RGBColor();
    }
    
    RGBColor Tracer::trace_ray(const Ray ray, const integer depth) const {
    	return RGBColor();
    }
    

      

  • 相关阅读:
    Linux文件和目录
    Android/ios手机销售榜
    项目开发流程
    游戏签到系统测试点
    项目上线后出现问题,该如何解决?
    公交地铁出行测试点
    初学测试
    测试用例的优先级
    Django的MVT模式与MVC模式
    JWT安装配置
  • 原文地址:https://www.cnblogs.com/dalgleish/p/12602732.html
Copyright © 2011-2022 走看看