-
#1 trou noir
- intersections demi droite interdites
- fix : t<0
-
#2 pixels randoms (avec des ronds...)
- en partit corrigé: #11 mais pas les faces avant/arrière
- fix : doubli
-
#3 avec plusieurs rayons pp les pixels randoms sont plus nombreux
- à cause de int pppV?
-
#4 positions x, y, z changent les faces (z en hauteur)
- fix : 4 bugs inversion determineColor :
- de création des faces
- getNextPoint
- left-right entity
- green et blue dans
- fix : 4 bugs inversion determineColor :
-
#5 loupe / effet lentille (type judas)
- fix : change ref dans getChildRot
- (pb car on ne peut pas additionner les angles)
-
#6 ray parcours chunk,block,face
- si la distance de la géométrie min du block est trop grande alors on le skip
- fix chunkG, chunkGMid...
-
#7 résultat de #1 il faudrait savoir si un chunk est derrière (demi-droite...)
- pas prioritaire (optimisation)
- possible: faire une sphère autour de l'objet, prendre le cercle perpendiculaire au ray et faire son carré le plus grand, comme pour une face
- Fix : containsLine
-
#8 se mettre sur une face fait un rendu de la permière face sans passer à travers
- fix : variable "enter" mis à false et si c'est le même point alors on prend pas
-
#9 en -1.5, 1.5, 1.5 on voit la face verte et non la bleue (entièrement)
- fix : pb avec Rect3D::getMiddle résolu en passant par le getMiddleGeometry
-
#10 les faces et les plans sont recalculés à chaque fois
- fix : pointeurs
-
#11 point3D 1-1 = 10^-17...
- fix: à toutes les fonctions avec + ou - on a une fonction verifOperator
- meilleur fix à faire : changer les fonctions pour double::operator -(double)
-
#12 fonction sur les doubles de #11
- pas prioritaire mais utile
- et pareil pour qCos et qSin (si la marge est trop faible par rapport à 1...)
- fix : doubli
-
#13 en 0,1.4,0.4 on voit la face magenta, mais en 0,1.4,0.5 on voit la face verte
- relaté à #9, car à cette hauteur on ne voit plus la face verte
- fix : #9
-
#14 doubli a ralenti le calcul (de #12 et indirectement #2)
- il faudrait juste des fonctions qui surpasse celles de double
- fix : juste une fonction round pour doubli
-
#15 relaté à #9 et #13 sur la face verte des fois ça traverse d'autres fois non
- (quand on est sur la face bleue en même temps ou quand on est à des 0.5 ou 1 ou 0)
-
#16 à la suite de #4 les formes horizontales sont encore un peu rondes
- fix : voir save 26/02/2021 (calcul avec asin(yPos / d))
-
#17 relaté à #15: en 0.5,0.5,1 on ne voit pas la face bleue
- il faudrait quelques pixels pour (pas obligé)
- fix : refusé
-
#18 ico
-
#19 les blocks en z=-1 sont pas affichés
- Fix : pour l'arrondit il faut faire -0.5 pour les nombres négatifs
-
#20 dans le miroir on a une ligne sur le plan xz
- il faut mettre un obstacle (en ghost on se voit pas donc c'est inifini)
- fix : opacité de 10 % au lieu de 0 %
-
#21 optimisation : on peut retirer les doubli ?
- fix : refusé
-
#22 arrondi : passé le sqrt(1+...) à sqrt(0.55+...) ça corrige un peu la distorsion, mais c'est toujours bizarre
- (cf l'image des miroirs du 21/02/2021)
- fix : comme #16
-
#23 Rect3D avec 2 points
- C'est une droite...
- Problème pour les miroirs et le verre/l'eau
-
#24 Réfraction : le changement pour #23 a cassé le calcul de réfraction
-
#24 Miroir : le changement pour #23 a cassé le calcul de réflexion
-
#25 Miroir speed of light : même si lastFaceIntersection est un miroir on ne doit pas considérer le matériaux du miroir mais celui d'avant
- Exemple : watter => mirror => watter, pour l'instant le miroir est plat donc c'est comme si on faisait watter => watter
- Fix: insideMaterial, permet aussi de choisir entre démarrer dans l'air ou dans l'eau
-
#26 insideMaterial doit faire une réfraction car l'oeil n'est pas direct dans le matériau
- Fix : dans le constructeur de Ray
- Il reste encore le problème de la réfraction en haut/en bas
- Fix : nouvelle formule
- Edit : marche toujours pas
- Fix : formule avec les vecteurs
-
#27 Verre dans les miroirs n'est pas bien réfracté
- Fix : formule avec les vecteurs
-
#28 Optimisation : Développement de Taylor
-
#29 Watter et verre vert n'ont pas le bon rendu quand leurs ColorLight est superposée
- Solution : ColorLight & ColorFilter
- Fix temporaire : changement du calcul (mais ne prend plus en compte l'intensité lumineuse de la source...)
-
#30 La réfraction d'entrée est cassée pour les faces en sens négatif
- Solution : c'est l'axe Ori qui doit être dans l'autre sens
- Fix : j'avais oublié l'orientation
-
#31 Petit point en haut et en bas dans un miroir sutie à #28
- Fix : trigoTaylorLevel à 11
-
#32 QImage scaled ne prend que quelques pixels
- Solution : QImage en mode jpg ou algo custom pour paint (meilleur solution car prend en compte la light de ColorLight)
- Pb : ça va augmenter énormément le process ? => en cas de changement de taille il faut scaled une image => quand le changement est terminé (timeout de 200ms) on peut faire le calcul