Annonces Google
Serveur IRC
Serveur : irc.portlane.se
Canal : #AmigaNG
Activité du Site

Pages vues depuis 25/07/2007 : 25 244 131

  • Nb. de membres 187
  • Nb. d'articles 1 270
  • Nb. de forums 19
  • Nb. de sujets 20
  • Nb. de critiques 24

Top 10  Statistiques

Index du forum »»  Création-Développement »» Nouveau moteur 3D (PXS Alpha)

Nouveau moteur 3D (PXS Alpha)#886

15Contributeur(s)
CrisotphardfrK-LMurakamiAmiDARKCreolssinisrusMrodfrSergiusElwoodxrayTurricann2kdavebracozzd10hPetrol
3 Modérateur(s)
K-LElwoodcorto
Crisot Crisoticon_post
Bon t'embête point j'ai "trouvé". Avec les libs de l'update 3, tout fonctionne parfaitement.

En repassant à la warp3D.library de l'update 5, toujours pas de problème.
Par contre, le problème semble venir de la W3D_R200.library.

A vu de nez je dirais que la lib prend mal les offsets donnés lors du DrawVertexArrays (ou un truc comme ça) et du coup ça foire les triangles par paquets.

Aucune idée si ce problème se retrouve dans la nouvelle W3D_Radeon.library ainsi que W3D_permedia2.library.

Si c'est bien un bug de la lib, ça doit pas être trop chiant à contourner (où mieux: à fixer). Si ça met en avant un problème dans mon code... bah j'ai plus rien à dire :D
--
AmigaOne X1000 - 2 Go DDR2 - Sapphire R9 280x Toxic - Crucial MX200 500 Go - Alim/Cooling BeQuiet
Crisot Crisoticon_post
Bon, j'ai le fin mot de l'histoire!

Roulement de tambours... RMBL RMBL RMBL... TADAAA!!! Ils ont réussit à implémenter un nouveau bug à Warp3D! Oui, c'est possible! Il restait encore de la place dans le code pas trop instable pour ça, aussi instable que le combo Warp3D/MiniGL puisse déjà paraitre.

Bon, maintenant que j'ai bien trollé, est ce qu'un beta-tester peut faire (gentillement) remonter ceci:


There is a problem with the W3D_DrawArray() function of W3D_R200.library 53.16 (update 5). I don't know if W3D_Radeon 53.15 and W3D_Permedia2 52.42 are concerned since I got no Radeon 7x00 or Permedia 2 to test them. Warp3D.library 53.13 looks fine too, I only had to revert W3D_R200.library to 53.9 (update 3).

The problem: When drawing some long triangles array (and maybe other primitive types), the triangles get quickly fucked up, going everywhere they want on the screen. Only something like 400 triangles (400*3 primitives) in a row are enough to see the problem.

Very simple example:

W3D_DrawArray(WS->context,W3D_PRIMITIVE_TRIANGLES,0,9000);

Give horrible result! But:

for (j=0; j<3000; j++) // horrible test
{
W3D_DrawArray(WS->context,W3D_PRIMITIVE_TRIANGLES,j*3,3);
}

Works perfectly!

I was thinking about too long harware locking problem, but the hardware is locked/unlocked outside the loop.

I already cut my arrays to avoid crackling sound, but I used to draw around 10000 triangles in a row without problem. Cutting arrays down to 350 triangles is the exact opposite to optimisation rules (longer == better... Or maybe 'was my ex girlfriend? Can't remember).

If it's a bug, I'm happy to report it to you. If it's a new restriction (maybe internal optimisation related), I'll be happy to be enlightened about this, don't forget updated autodoc ;-)



Voili voilo. En attendant une réponse de la mailing-list par l'intermédiaire d'un BT, je me tâte entre retourner à l'ancienne lib ou adapter le code...
--
AmigaOne X1000 - 2 Go DDR2 - Sapphire R9 280x Toxic - Crucial MX200 500 Go - Alim/Cooling BeQuiet

Message édité par : Crisot / 28-10-2012 05:26
Petrol Petrolicon_post
Bonsoir Crisot,

Je suis content de te relire à nouveau et de voir que tu es toujours aussi motivé!

Pour ta question à propos de warp3d, pourquoi ne pas la poser directement sur le forum de support d'hyperion, ce serait plus simple pour partager l'info avec d'autres devs.

Cordialement,
Petrol.
davebraco davebracoicon_post
J'ai passé ton message au developpeur qui a fait les modifications sur le pilote R200.

Mais c'est clair que si tu as la possibilité, enregistre toi sur le forum hyperion (si ce n'est déjà fait) et publie le message à cet endroit.
En général, la personne concernée réponds assez rapidement et d'autres programmeurs peuvent donner leur avis/aide également.

En tout cas, j'espère que cela ne freinera pas trop l'avancée de ton moteur.

Peux tu m'envoyer ton adresse email en MP au cas où?
A1200PPC / Sam440ep / Sam460ex / X1000 / X5000
Crisot Crisoticon_post
Okay merci!

Je savais point qu'il y avait un forum Hyperion accessible au pékin lambda, je vais m'y enregistrer. :)
--
AmigaOne X1000 - 2 Go DDR2 - Sapphire R9 280x Toxic - Crucial MX200 500 Go - Alim/Cooling BeQuiet
Sergius Sergiusicon_post
Je laisse un petit mot juste pour dire que ça fait grave plaisir de savoir que Crisot est toujours là.
il en reste plus beaucoup des gars de sa trempe.
-- Pegasos II + 2 licences Classic "WinUAE". --
davebraco davebracoicon_post
@ Crisot :

MP envoyé.
A1200PPC / Sam440ep / Sam460ex / X1000 / X5000
Petites Annonces

0 annonce(s) publiée(s)

Consulter

AmigaOS 4.1

Laissez-vous tenter par
AmigaOS 4.1
AmiTheme

AmiTheme