Commit 69a1bbdc authored by Ilyas's avatar Ilyas
Browse files

Merge branch 'master' of gitlab.ensimag.fr:mouddeni/3dproject

parents dc6e87a1 acc24289
......@@ -7,16 +7,24 @@
OU
```python Pviewer.py```
ATTENTION : Le module ```opensimplex``` est nécéssaire pour la bonne exécution du code.
Pour l'installer : ```pip3 install opensimplex``` OU ```pip install opensimplex```.
## Bugs connus
L'illumination du sol est à revoir. Le problème se trouve probablement au niveau du calcul des normales.
Lorsque l'on zoom très en avant, la skybox peut disparaître.
## Description du contenu
### Océan et île
La scène est composée principalement d'un océan et d'une île. L'océan est animé de manière procédurale via des vagues "régulières" permanentes, et d'autres plus ponctuelles. Les shaders utilisés pour cela sont water.vert et light.frag. Pour modifier la hauteur, la longueur d'onde des vagues et la taille de l'océan, il suffit de modifier les valeurs des attributs de la class ```Water```dans le fichier ```lightning_water_skybox.py```. Le code du sol de l'île se trouve dans le fichier principal ```Pviewer.py```.
Par ailleurs, le code de l'eau animée n'est pas très bien optimisé. En cas de problèmes de performances, nous conseillons de réduire la taille de l'océan.
### Skybox
La skybox qui entoure la scène est codée dans le fichier ```lightning_water_skybox.py```, et utilise les shaders ```skybox.vert``` et ```skybox.frag```. Elle suit la caméra pour les translations : la matrice ```view``` dans ```skybox.vert``` a été nullifiée. En revanche, on peut sortir de celle-ci en dézoomant suffisamment.
......@@ -43,10 +51,6 @@ Au niveau de la hiérarchie, tous les bâtiments et personnages dépendent du no
Certains shaders et classes dans l'archive fournie ont été utilisés dans le développement, mais ne sont aujourd'hui plus utilisés, comme la classe ```Sun``` ou le fichier ```color.frag```.
## Contact
gabriel.van-der-schot@grenoble-inp.org
......@@ -108,7 +108,7 @@ class CubeTexture:
class Skybox(TexturedCubeMesh):
""" Skybox object """
def __init__(self, shader):
self.size = 1000000
self.size = 100000
a = self.size
b = -a
......@@ -169,7 +169,7 @@ class Water(TexturedPhongMesh):
self.waveAmp_ponctual = 250.0
# water position buffer
self.size = 500
self.size = 400
pos = []
for i in range(self.size):
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment