[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"me":3,"catalog:tr:game-dev\u002Fgfx-shadows-depth-precision":4,"config":226},null,{"field_key":5,"field_name":6,"seniority":7,"topic_key":8,"topic_name":9,"spec_key":7,"spec_name":7,"locale":10,"cell_total":11,"field_total":12,"seniorities":13,"topics":17,"specs":130,"samples":147},"game-dev","Oyun Geliştirme","","gfx-shadows-depth-precision","Gfx Shadows Depth Precision","tr",75,2850,[14,15,16],"junior","mid","senior",[18,21,24,27,30,33,36,39,42,45,48,51,54,55,58,61,64,67,70,73,76,79,82,85,88,91,94,97,100,103,106,109,112,115,118,121,124,127],{"key":19,"name":20,"count":11},"game-ai-pathfinding","Game Ai Pathfinding",{"key":22,"name":23,"count":11},"game-input-audio","Game Input Audio",{"key":25,"name":26,"count":11},"game-loop-fundamentals","Game Loop Fundamentals",{"key":28,"name":29,"count":11},"game-networking-multiplayer","Game Networking Multiplayer",{"key":31,"name":32,"count":11},"game-performance-optimization","Game Performance Optimization",{"key":34,"name":35,"count":11},"game-physics-collision","Game Physics Collision",{"key":37,"name":38,"count":11},"game-rendering-pipeline","Game Rendering Pipeline",{"key":40,"name":41,"count":11},"game-state-management","Game State Management",{"key":43,"name":44,"count":11},"gfx-forward-deferred-architectures","Gfx Forward Deferred Architectures",{"key":46,"name":47,"count":11},"gfx-gpu-pipeline-stages","Gfx Gpu Pipeline Stages",{"key":49,"name":50,"count":11},"gfx-post-processing-aa-hdr","Gfx Post Processing Aa Hdr",{"key":52,"name":53,"count":11},"gfx-shading-lighting-pbr","Gfx Shading Lighting Pbr",{"key":8,"name":9,"count":11},{"key":56,"name":57,"count":11},"gfx-textures-sampling-compression","Gfx Textures Sampling Compression",{"key":59,"name":60,"count":11},"gp-ability-cooldown-damage","Gp Ability Cooldown Damage",{"key":62,"name":63,"count":11},"gp-animation-state-locomotion","Gp Animation State Locomotion",{"key":65,"name":66,"count":11},"gp-camera-follow-targeting","Gp Camera Follow Targeting",{"key":68,"name":69,"count":11},"gp-character-controller-movement","Gp Character Controller Movement",{"key":71,"name":72,"count":11},"gp-frame-windows-game-feel","Gp Frame Windows Game Feel",{"key":74,"name":75,"count":11},"gp-interaction-detection-triggers","Gp Interaction Detection Triggers",{"key":77,"name":78,"count":11},"nc-rollback-determinism","Nc Rollback Determinism",{"key":80,"name":81,"count":11},"nc-security-protocol","Nc Security Protocol",{"key":83,"name":84,"count":11},"nc-serialization-bandwidth","Nc Serialization Bandwidth",{"key":86,"name":87,"count":11},"nc-time-sync-tick","Nc Time Sync Tick",{"key":89,"name":90,"count":11},"nc-topology-nat-relay","Nc Topology Nat Relay",{"key":92,"name":93,"count":11},"nc-transport-reliability","Nc Transport Reliability",{"key":95,"name":96,"count":11},"ue-actor-component-lifecycle","Ue Actor Component Lifecycle",{"key":98,"name":99,"count":11},"ue-blueprint-cpp-interop","Ue Blueprint Cpp Interop",{"key":101,"name":102,"count":11},"ue-containers-strings-memory","Ue Containers Strings Memory",{"key":104,"name":105,"count":11},"ue-gameplay-framework-classes","Ue Gameplay Framework Classes",{"key":107,"name":108,"count":11},"ue-modules-build-packaging","Ue Modules Build Packaging",{"key":110,"name":111,"count":11},"ue-uobject-reflection-gc","Ue Uobject Reflection Gc",{"key":113,"name":114,"count":11},"un-csharp-memory-gc-performance","Un Csharp Memory Gc Performance",{"key":116,"name":117,"count":11},"un-gameobject-component-transform","Un Gameobject Component Transform",{"key":119,"name":120,"count":11},"un-jobs-burst-dots-basics","Un Jobs Burst Dots Basics",{"key":122,"name":123,"count":11},"un-monobehaviour-lifecycle-execution-order","Un Monobehaviour Lifecycle Execution Order",{"key":125,"name":126,"count":11},"un-prefabs-instantiate-pooling-addressables","Un Prefabs Instantiate Pooling Addressables",{"key":128,"name":129,"count":11},"un-scriptableobject-serialization","Un Scriptableobject Serialization",[131,135,138,141,144],{"key":132,"name":133,"count":134},"gameplay","Gameplay",450,{"key":136,"name":137,"count":134},"graphics-rendering","Graphics \u002F Rendering",{"key":139,"name":140,"count":134},"multiplayer-netcode","Multiplayer \u002F Netcode",{"key":142,"name":143,"count":134},"unity-csharp","Unity (C#)",{"key":145,"name":146,"count":134},"unreal-cpp","Unreal (C++)",[148,166,179,193,206,216],{"id":149,"topic":9,"difficulty":150,"body":151,"options":152,"correct_key":154,"explanation":165},"01a01705-2024-7df3-be22-37d89c274bfc",1,"Klasik shadow mapping'te, ana kamera pass'inden önce ışığın bakış açısından ne render edilir?",[153,156,159,162],{"key":154,"text":155},"a","Sahnenin yalnızca derinlik içeren görüntüsü",{"key":157,"text":158},"b","Sahnenin tam gölgelendirilmiş renkli görüntüsü",{"key":160,"text":161},"c","Ekran-uzayı normal buffer'ı",{"key":163,"text":164},"d","Aydınlık piksellerin stencil maskesi","Shadow mapping sahneyi ışığın bakış açısından render eder ve yalnızca derinlik değerlerini saklar. Kamera pass'i daha sonra her fragment'in ışığa uzaklığını bu saklanan derinlikle karşılaştırarak gölgeyi belirler.",{"id":167,"topic":9,"difficulty":150,"body":168,"options":169,"correct_key":160,"explanation":178},"01a01705-2027-7ac3-8492-a95219bff96e","Directional bir ışık (örn. güneş ışığı) için shadow map tipik olarak hangi projeksiyonla render edilir?",[170,172,174,176],{"key":154,"text":171},"Perspektif projeksiyon",{"key":157,"text":173},"Cube map projeksiyonu",{"key":160,"text":175},"Ortografik projeksiyon",{"key":163,"text":177},"Dual-paraboloid projeksiyon","Directional bir ışığın ışınları paralel olduğu ve tek bir köken noktası olmadığı için shadow map'i ortografik projeksiyonla render edilir; spot ışıklar perspektif, point ışıklar ise tipik olarak cube map ya da dual-paraboloid projeksiyon kullanır.",{"id":180,"topic":9,"difficulty":181,"body":182,"options":183,"correct_key":163,"explanation":192},"01a01705-202a-78ef-8079-7ebf55ac85f7",2,"Bir point ışık her yöne ışın yayar. Çevresindeki tüm yön küresini kapsamak için tipik olarak hangi yaklaşım kullanılır?",[184,186,188,190],{"key":154,"text":185},"Tek bir ortografik shadow map",{"key":157,"text":187},"Kameranın frustum'una hizalanmış bir shadow map",{"key":160,"text":189},"Ortografik haritalardan oluşan bir cascade seti",{"key":163,"text":191},"Her yüz için ayrı derinlik geçişi olan bir cube map","Point ışığın tek bir ileri yönü olmadığından tek bir perspektif harita onu kapsayamaz. Yaygın çözüm, derinliği bir cube map'in altı yüzüne, her eksen yönü için bir tane olacak şekilde render etmektir; dual-paraboloid mapping bir alternatiftir.",{"id":194,"topic":9,"difficulty":181,"body":195,"options":196,"correct_key":157,"explanation":205},"01a01705-202c-7bc1-8fb5-7faafe94f784","Aydınlık düz bir zemin, hiçbir engel yokken titreyen koyu çapraz çizgiler gösteriyor. Bu artefakt nedir?",[197,199,201,203],{"key":154,"text":198},"Peter-panning",{"key":157,"text":200},"Shadow acne",{"key":160,"text":202},"Light leaking",{"key":163,"text":204},"Tekstür sızıntısı","Bu shadow acne'dir: aksi halde aydınlık olan bir yüzeyde beliren hatalı self-shadowing çizgi desenidir; shadow map'in kuantize derinliği, yüzeyi o noktada kendisinden ışığa daha uzakmış gibi yanlış karşılaştırır.",{"id":207,"topic":9,"difficulty":181,"body":208,"options":209,"correct_key":160,"explanation":215},"01a01705-2030-739c-a17d-3ca142cb0c26","QA, bir karakterin ayakları ile zemindeki kendi gölgesi arasında görünür bir boşluk bildiriyor. Bu artefaktın adı nedir?",[210,211,213,214],{"key":154,"text":200},{"key":157,"text":212},"Cascade dikişi",{"key":160,"text":198},{"key":163,"text":202},"Peter-panning, gölgeyi oluşturan nesneden gölgenin görünür şekilde ayrılmasıdır; en sık nedeni, karşılaştırılan gölge yüzeyini gereğinden fazla iten büyük bir depth bias'tır.",{"id":217,"topic":9,"difficulty":181,"body":218,"options":219,"correct_key":154,"explanation":225},"01a01705-2031-7e09-a007-70ea4fbbaefd","İnce bir occluder kenarı yakınında, iki gölgeli duvarın ışığı tamamen engellemesi gereken bir köşede ışık görünür şekilde sızıyor. Bu neye denir?",[220,221,222,224],{"key":154,"text":202},{"key":157,"text":200},{"key":160,"text":223},"Z-fighting",{"key":163,"text":198},"Light leaking, tamamen gölgede olması gereken bir alana ışığın hatalı şekilde ulaşmasıdır. Genellikle ince occluder'lar yakınında, shadow-map çözünürlüğünün veya bias'ın kenarı doğru temsil etmeye yetmediği durumlarda görülür.",{"fields":227,"seniorities":440,"interview_shapes":441,"locales":446,"oauth":448,"question_count":451,"coach_enabled":452,"jd_match_enabled":452},[228,253,273,290,314,327,346,365,387,406,421,431],{"key":229,"name_tr":230,"name_en":230,"sort":150,"specializations":231},"backend","Backend",[232,235,238,241,244,247,250],{"key":233,"name":234,"field":229},"general","Genel",{"key":236,"name":237,"field":229},"go","Go",{"key":239,"name":240,"field":229},"python","Python",{"key":242,"name":243,"field":229},"java","Java",{"key":245,"name":246,"field":229},"csharp","C#\u002F.NET",{"key":248,"name":249,"field":229},"nodejs","Node.js",{"key":251,"name":252,"field":229},"php","PHP",{"key":254,"name_tr":255,"name_en":255,"sort":181,"specializations":256},"frontend","Frontend",[257,258,261,264,267,270],{"key":233,"name":234,"field":254},{"key":259,"name":260,"field":254},"javascript","JavaScript",{"key":262,"name":263,"field":254},"typescript","TypeScript",{"key":265,"name":266,"field":254},"react","React",{"key":268,"name":269,"field":254},"vue","Vue",{"key":271,"name":272,"field":254},"angular","Angular",{"key":274,"name_tr":275,"name_en":275,"sort":276,"specializations":277},"fullstack","Fullstack",3,[278,279,280,281,282,283,284,285,286,287,288,289],{"key":233,"name":234,"field":274},{"key":236,"name":237,"field":229},{"key":239,"name":240,"field":229},{"key":242,"name":243,"field":229},{"key":245,"name":246,"field":229},{"key":248,"name":249,"field":229},{"key":251,"name":252,"field":229},{"key":259,"name":260,"field":254},{"key":262,"name":263,"field":254},{"key":265,"name":266,"field":254},{"key":268,"name":269,"field":254},{"key":271,"name":272,"field":254},{"key":291,"name_tr":292,"name_en":292,"sort":293,"specializations":294},"devops-cloud","DevOps \u002F Cloud",4,[295,296,299,302,305,308,311],{"key":233,"name":234,"field":291},{"key":297,"name":298,"field":291},"aws","AWS",{"key":300,"name":301,"field":291},"gcp","GCP",{"key":303,"name":304,"field":291},"azure","Azure",{"key":306,"name":307,"field":291},"kubernetes","Kubernetes",{"key":309,"name":310,"field":291},"terraform","Terraform",{"key":312,"name":313,"field":291},"linux","Linux",{"key":315,"name_tr":316,"name_en":316,"sort":317,"specializations":318},"ai-engineer","AI Engineer",5,[319,320,321,324],{"key":233,"name":234,"field":315},{"key":239,"name":240,"field":315},{"key":322,"name":323,"field":315},"llm-rag","LLM\u002FRAG",{"key":325,"name":326,"field":315},"mlops","MLOps",{"key":328,"name_tr":329,"name_en":330,"sort":331,"specializations":332},"database","Veritabanı","Database",6,[333,334,337,340,343],{"key":233,"name":234,"field":328},{"key":335,"name":336,"field":328},"postgresql","PostgreSQL",{"key":338,"name":339,"field":328},"mysql","MySQL",{"key":341,"name":342,"field":328},"mongodb","MongoDB",{"key":344,"name":345,"field":328},"redis","Redis",{"key":347,"name_tr":348,"name_en":349,"sort":350,"specializations":351},"mobile","Mobil","Mobile",7,[352,353,356,359,362],{"key":233,"name":234,"field":347},{"key":354,"name":355,"field":347},"ios-swift","iOS (Swift)",{"key":357,"name":358,"field":347},"android-kotlin","Android (Kotlin)",{"key":360,"name":361,"field":347},"flutter","Flutter",{"key":363,"name":364,"field":347},"react-native","React Native",{"key":366,"name_tr":367,"name_en":368,"sort":369,"specializations":370},"security","Güvenlik","Security",8,[371,372,375,378,381,384],{"key":233,"name":234,"field":366},{"key":373,"name":374,"field":366},"appsec","AppSec",{"key":376,"name":377,"field":366},"offensive-pentest","Offensive \u002F Pentest",{"key":379,"name":380,"field":366},"cloud-security","Cloud Security",{"key":382,"name":383,"field":366},"devsecops","DevSecOps",{"key":385,"name":386,"field":366},"blue-team-incident","Blue Team \u002F Incident",{"key":388,"name_tr":389,"name_en":390,"sort":391,"specializations":392},"qa-test-automation","QA \u002F Test Otomasyonu","QA \u002F Test Automation",9,[393,394,397,400,403],{"key":233,"name":234,"field":388},{"key":395,"name":396,"field":388},"test-automation","Test Automation",{"key":398,"name":399,"field":388},"sdet","SDET",{"key":401,"name":402,"field":388},"performance-testing","Performance Testing",{"key":404,"name":405,"field":388},"mobile-qa","Mobile QA",{"key":407,"name_tr":408,"name_en":408,"sort":409,"specializations":410},"data-engineer","Data Engineer",10,[411,412,415,418],{"key":233,"name":234,"field":407},{"key":413,"name":414,"field":407},"pipelines-etl","Pipelines \u002F ETL",{"key":416,"name":417,"field":407},"streaming","Streaming",{"key":419,"name":420,"field":407},"warehousing","Warehousing",{"key":5,"name_tr":6,"name_en":422,"sort":423,"specializations":424},"Game Development",11,[425,426,427,428,429,430],{"key":233,"name":234,"field":5},{"key":142,"name":143,"field":5},{"key":145,"name":146,"field":5},{"key":132,"name":133,"field":5},{"key":136,"name":137,"field":5},{"key":139,"name":140,"field":5},{"key":432,"name_tr":433,"name_en":433,"sort":434,"specializations":435},"ml-engineer","ML Engineer",12,[436,437],{"key":233,"name":234,"field":432},{"key":438,"name":439,"field":432},"classical-ml","Classical ML",[14,15,16],{"junior":442,"mid":444,"senior":445},{"questions":443,"median_sec":3},20,{"questions":443,"median_sec":3},{"questions":443,"median_sec":3},[10,447],"en",[449,450],"google","github",27600,true]