raytracing

    4熱度

    2回答

    所有, 我寫一個相當非常規的射線追蹤來計算場景中的各種物體的熱傳導性能。在這個射線追蹤器中,隨機射線從我原始物體的表面射入場景中以檢查交叉點。 這個特殊的算法要求每個射線在原始空間中發展,然後仿照源對象仿射變換到世界空間,然後仿射變換回到場景中其他對象的原始空間以檢查相交。 直到我做一個各向異性的比例,例如通過[2 2 1](各向同性的比例很好)來縮放對象,所有的都是好的。這導致我相信我沒有正確地

    3熱度

    1回答

    GLSL函數fwidth(p)是做什麼的? 我知道它是這樣實現的: fwidth(p) = abs(dfdx(p)) + abs(dfdy(p)) ,但我不知道如果我得到它。 我在這裏做一些基本的光線投射,並嘗試計算需要的miplevel。要找到miplevel,請在光線擊中體積的座標(紋理空間中)上調用fwidth。 // get 'derivate width' of sampling p

    10熱度

    1回答

    我正在寫一個光線跟蹤器(主要是爲了好玩),雖然我已經寫了一個過去,並花了大量的時間搜索,沒有教程似乎闡明瞭如何在透視投影中計算眼睛光線,而不使用矩陣。 我相信我最後一次做的是通過使用類Quaternion(可能)低效旋轉相機方向矢量的眼矢量x/y度。這是用C++編寫的,我正在用C#做這個,儘管這並不重要。 僞代碼(假設V * Q =變換操作) yDiv = fovy/height xDiv =

    5熱度

    1回答

    我正在用純Python構建一個簡單的Python光線追蹤器(僅僅是爲了它),但是我碰到了一個障礙。 我的場景的設置目前是這樣的: 攝像頭位於0, -10, 0沿Ÿ軸指向。 半徑球體1位於0, 0, 0。 成像平面物距離攝像機的距離爲1,其寬度和高度爲0.5。 我拍攝的光子在通過一個成象平面均勻隨機地分佈,並且如果光子發生交叉的對象,我對應於所述點處的圖像平面上的圖像畫布上繪製一個紅點,通過該光線通

    1熱度

    2回答

    我想使用boost::threadpool(不是boost,link的官方部分)並行我的程序的某個方面。然而,我發現我的程序停滯,並經過檢查,htop顯示有兩個不活動的線程(我懷疑在我的線程池中)和一個線程以100%運行(我懷疑我的主執行線程)。 下面是相關代碼: namespace rt { class Renderer { public: Renderer(int t

    2熱度

    2回答

    我正在用c#寫一個簡單的raytracer/raycaster。我在Vector中已經過期了,所以我寫了一個名爲Vector3D的類,如下面的代碼所示。我也寫了一堂課來處理光線。就目前而言,我擔心的是確保光線從相機出發,然後被投射到屏幕上的所有像素,然後投射到場景中相機前面的物體。我已經將文本寫入輸出(Debug.WriteLine),儘管很難看到它是否真正起作用。下面的代碼是否合適,或者你會推薦

    5熱度

    3回答

    我有一個由點頂點(XYZ)和最終三角面組成的三維模型。 使用OpenGL或camera-view-matrix-projection我可以將3D模型投影到2D平面,即視圖窗口或m * n分辨率的圖像。 問題是如何確定2D投影平面中的像素與原始3D模型中對應的頂點(或面)之間的對應關係。 即, 從2D投影中給定像素的3D模型中最接近的頂點是什麼? 聽起來像在openGL或光線跟蹤問題中選擇。有沒有簡

    0熱度

    1回答

    int main(int a, char *args[]) { int i; pthread_t threads[8]; unsigned int* pixmap = malloc(1024*1024*sizeof(int)); v_threadargs.height = 1024.0f; v_threadargs.width = 1024.0f

    -2熱度

    1回答

    類庫,CLR控制檯應用程序,CLR空項目,生成文件項目,控制檯應用程序或表單應用程序?

    0熱度

    2回答

    我正在使用不支持CUDA或OpenCL等功能的Windows Phone 7。我是新來的GPU的一面,有沒有什麼可以用來幫助加速光線追蹤的GPU上?像三角形相交測試?或者從紋理中選擇正確的顏色?