Author Topic: Un workspace pour les flemards ^^  (Read 10065 times)

0 Members and 1 Guest are viewing this topic.

Offline RaHoW

  • Base
    • Pouet.net
    • View Profile
    • Apex - official site
  • Ancienneté: 1993
  • Groupe: Apex
  • Rôle: Gfx, code, orga
Un workspace pour les flemards ^^
« on: 15 August 2010 à 03:44:43 »
Bon voilà j'explique tout:

Dus au manque de codeur actifs sur la Scene, on est parfois obligé de coder ses prods soit-même si l'ont tient à en sortir certaines, aussi modestes soient-elles ^^

Seulement quand on est pas un codewarrior brutal deluxe, bein on galere souvent avec le truc le plus important: le workspace !

J'ai pas exemple voulu faire une intro 64k ( "à l'ancienne", sans générateur de textures ni soft synth ) en me servant du workspace NeHe:

http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=01

Il est bien sûr tout à fait exploitable en lui-même, y compris par moi (et en plus il contient de quoi loader des formats genre jpg/png, à moindre cout de place), mais pour faire ce que je voulais il me manquait 3 choses:

1- greffer une lib son, genre FMOD (la version mini): j'ai fini par y arriver après avoir un peu galéré...
2- greffer une synchro style synchro VBlank ---> je crois que j'ai aussi réussi en magouillant pas mal mais je suis pas sure de son efficacité
3- trouver un moyen d'inclure les données (gfx + zic) dans l'executable ---> y a rien à faire, dire que sur Amiga un simple "#incbin" en assembleur suffisait -___-

donc moi je voudrais savoir si kkun dispose d'un tel workspace OpenGL, contenant également de quoi assembler facilement les diverses scènes qu'on pourrait faire sur des sources séparées (oui je fais plus jamais toutes les scènes sur le même sources -___- ) et qui pourrait éventuellement:

- mettre le tout à dispo
- accepter de monter notre code et nos datas de manière à ce que ca fasse une demo à la fin ^^

Gros plus : pouvoir directement loader et manipuler des scènes Blender ^^;;;;

Je sais que j'en demande beaucoup mais ça limiterait énormément le rôle d'un éventuel codeur "qui n'a pas le temps" ^^

(notes: si un codeur est directement libre pour coder directement toute la prod je prend aussi ^__________^;;; )
=RaHoW/Apex=

Offline xoofx

  • Base
    • Pouet.net
    • View Profile
    • xoofx
  • Ancienneté: 1989
  • Groupe: FRequency
  • Rôle: code (+musique), web
  • Ville: Grenoble
Re : Un workspace pour les flemards ^^
« Reply #1 on: 15 August 2010 à 10:03:58 »
Salut RaHoW
workspace, tu veux dire framework ou library?  ;D

Posté dernièrement sur pouet, tu peux regarder du côté de libcinder, j'ai testé et c'est très complet, mais ça demande de toute façon toujours du boulot... au moins il supporte l'ajout une zik, embarque les ressources... sinon pour le vblank, c'est réglable, même si ce n'est pas toujours utilisé au profit d'une gestion correcte de la synchro temps/séquence...

Si tu veux plus qu'un framework  tu peux essayer des demotools, comme celui de Stravaganza, pas testé, mais ça semble assez puissant

Sinon, en C#, tu as XNA




Offline RaHoW

  • Base
    • Pouet.net
    • View Profile
    • Apex - official site
  • Ancienneté: 1993
  • Groupe: Apex
  • Rôle: Gfx, code, orga
Re : Un workspace pour les flemards ^^
« Reply #2 on: 15 August 2010 à 12:17:32 »
Ouai je voulais surement dire "framework" ^^

Je vais évité de re-utiliser des tools (la dernière fois j'ai pris une volée de bois vert sur Pouet du genre "si t'avais codé l'intro on aurait mis passable, mais là du coup c'est thumb down" ^___^ ), tu peux de toutes manières pas vraiment faire ce que tu veux (du genre faire plus simple ^^ )

En fait mon plus gros problème c'est que je comprenais rien au code objet en général, mais maintenant que j'ai rectifié j'irais surement voir un peu tout ca, merki ^^
=RaHoW/Apex=

Offline RaHoW

  • Base
    • Pouet.net
    • View Profile
    • Apex - official site
  • Ancienneté: 1993
  • Groupe: Apex
  • Rôle: Gfx, code, orga
Re : Un workspace pour les flemards ^^
« Reply #3 on: 16 August 2010 à 14:15:08 »
Bon j'ai checké... c'est beaauuuuucoup trop compliqué pour moi !! E nfait tout ce que je voudrais c'est un tweak du framework NeHe avec FMOD (ou fmod mini pour les 64k), une bonne synchro, et de quoi inclure mes datas ^^

Rien qu'un cube mappé sur Cinder prend 10 sources et 60 000 lignes de code ^^;;;;

Une fois que j'ai ce framework apres je fais mes trucs à droite à gauche, mais sans ça je peux pas vraiment faire le job (en plus maintenant que j'ai converti le projet de la 64k en version Visual C++ express 2010 il veut plus charger ni le mod ni les textures T____T )

[edit]
en fait les datas veulent pas se charger quand je lance dans VC++E  mais quand je lance l'exe en externe c'est bon ^^
la question c'est: pourquoi ??? o__o
[/edit]

« Last Edit: 16 August 2010 à 14:17:49 by RaHoW »
=RaHoW/Apex=

Offline xoofx

  • Base
    • Pouet.net
    • View Profile
    • xoofx
  • Ancienneté: 1989
  • Groupe: FRequency
  • Rôle: code (+musique), web
  • Ville: Grenoble
Re : Un workspace pour les flemards ^^
« Reply #4 on: 16 August 2010 à 14:30:23 »
Euh... je comprends pas trop comment tu te retrouves avec 60000 lignes de code, à moins que tu ne comptes la librairie libcinder dans le lot  ???

Dans libcinder, tu as un exemple qui fait moins de 3k, RotatingBox, qui te montre uniquement ce que tu dois coder (l'exemple suivant capture même ce qui vient de la webcam et le mappe sur le cube... c'est déjà sacrément court comme code)
Code: [Select]
#include "cinder/app/AppBasic.h"
#include "cinder/Surface.h"
#include "cinder/gl/Texture.h"
#include "cinder/Capture.h"
#include "cinder/Camera.h"
#include "cinder/Text.h"

using namespace ci;
using namespace ci::app;

class RotatingCubeApp : public AppBasic {
  public:
void setup();
void resize( int width, int height );
void update();
void draw();

CameraPersp mCam;
Capture mCapture;
gl::Texture mTexture;
Matrix44f mCubeRotation;
};

void RotatingCubeApp::setup()
{
try {
mCapture = Capture( 320, 240 );
mCapture.start();
}
catch( ... ) { // failed to initialize the webcam, create a warning texture
// if we threw in the start, we'll set the Capture to null
mCapture.reset();

TextLayout layout;
layout.clear( Color( 0.3f, 0.3f, 0.3f ) );
layout.setColor( Color( 1, 1, 1 ) );
layout.setFont( Font( "Arial", 96 ) );
layout.addCenteredLine( "No Webcam" );
layout.addCenteredLine( "Detected" );
mTexture = gl::Texture( layout.render() );
}

mCam.lookAt( Vec3f( 3, 2, -3 ), Vec3f::zero() );
mCubeRotation.setToIdentity();

glEnable( GL_TEXTURE_2D );
gl::enableDepthRead();
gl::enableDepthWrite();
}

void RotatingCubeApp::resize( int width, int height )
{
// now tell our Camera that the window aspect ratio has changed
mCam.setPerspective( 60, getWindowAspectRatio(), 1, 1000 );

// and in turn, let OpenGL know we have a new camera
gl::setMatrices( mCam );
}

void RotatingCubeApp::update()
{
if( mCapture && mCapture.checkNewFrame() ) {
mTexture = gl::Texture( mCapture.getSurface() );
}

// Rotate the cube by .03 radians around an arbitrary axis
mCubeRotation.rotate( Vec3f( 1, 1, 1 ), 0.03f );
}

void RotatingCubeApp::draw()
{
// if we haven't gotten a texture from the Capture yet, don't draw anything
if( ! mTexture )
return;

gl::clear( Color::black() );
mTexture.bind();
glPushMatrix();
gl::multModelView( mCubeRotation );
gl::drawCube( Vec3f::zero(), Vec3f( 2.0f, 2.0f, 2.0f ) );
glPopMatrix();
}
CINDER_APP_BASIC( RotatingCubeApp, RendererGl )

Le résultat est :


Pour utiliser Cinder, tu dois juste compiler la lib une fois pour toute, mettre de côté le .lib pour l'utiliser dans tes projets en configurant les include dans VC++...

Si vraiment tu ne vois pas comment faire, je pourrais uploader un projet avec la lib précompilé... mais là, avec le code plus haut, je ne vois pas trop comment tu peux avoir qq chose plus simple en C/C++... à fonctionnalités égales


ponce

  • Guest
Re : Un workspace pour les flemards ^^
« Reply #5 on: 16 August 2010 à 14:48:18 »
@RaHoW
Si tu veux un framework spécial et sans C++ pour les artistes, Processing a été créé exprès pour ça. Je ne recommande pas - parce que bon c'est du Java - mais force est de constater que certains qui l'utilisent ont une exposition considérable (pas dans la demoscene).


Offline RaHoW

  • Base
    • Pouet.net
    • View Profile
    • Apex - official site
  • Ancienneté: 1993
  • Groupe: Apex
  • Rôle: Gfx, code, orga
Re : Un workspace pour les flemards ^^
« Reply #6 on: 16 August 2010 à 15:06:01 »
@lx: ouai y a trop de code objet en fait, faut que je prenne du skill avant ^^

Ponce: en Java... faudrait voir...
=RaHoW/Apex=

Offline RaHoW

  • Base
    • Pouet.net
    • View Profile
    • Apex - official site
  • Ancienneté: 1993
  • Groupe: Apex
  • Rôle: Gfx, code, orga
Re : Un workspace pour les flemards ^^
« Reply #7 on: 16 August 2010 à 19:44:37 »
C'est le "MArvin Framework" ?? (non parce que "processing" + "C" + "framework" dans google ca donne pas grand chose ^^ )
=RaHoW/Apex=

ponce

  • Guest
Re : Un workspace pour les flemards ^^
« Reply #8 on: 16 August 2010 à 20:21:40 »
Enlèves le "C" :D


Offline RaHoW

  • Base
    • Pouet.net
    • View Profile
    • Apex - official site
  • Ancienneté: 1993
  • Groupe: Apex
  • Rôle: Gfx, code, orga
Re : Un workspace pour les flemards ^^
« Reply #9 on: 16 August 2010 à 21:08:15 »
Voila l'url direct pour ceux que ca intéresse aussi ^^

http://processing.org/
=RaHoW/Apex=

Offline ok3anos

Re : Re : Un workspace pour les flemards ^^
« Reply #10 on: 08 October 2010 à 19:32:05 »
Bon j'ai checké... c'est beaauuuuucoup trop compliqué pour moi !! E nfait tout ce que je voudrais c'est un tweak du framework NeHe avec FMOD (ou fmod mini pour les 64k), une bonne synchro, et de quoi inclure mes datas ^^

Salut RaHow!

De toute façon tu ne trouveras pas de framework "facile".
Même si tu as une class Music, Synchro etc... Tu devras insérer quand même un minimum de code selon la lib que tu utilises.
Les classes sont là pour simplifier les choses mais c'est tout.

Tous les coders créent leur propre framework avec leur propre classes. C'est déjà assez difficile de s'y retrouver dans son propre bordel alors aller en chercher un autre!!  ;D

Sinon il y a les demotools werkzeug etc... mais alors là, c'est plus du code. Si tu fais quelquechose avec ça ce sera apprécié pour le côté artistique mais pas pour le côté technique..... Bref, il n'y a pas de solution miracle.

Offline kaneel

  • Base
    • Pouet.net
    • View Profile
  • Ancienneté: 2000
  • Groupe: TPOLM
Re : Un workspace pour les flemards ^^
« Reply #11 on: 08 October 2010 à 22:52:48 »
Je pense pas que les libs tel que cinder, openframework ou processing conviennent pour de la demo. C'est plutôt des frameworks adaptés pour des besoins d'installations visuelles et sonores. Un peu comme max/msp ou puredata...

Offline bla

  • Base
    • Pouet.net
    • View Profile
    • mankind
  • Ancienneté: 42
  • Groupe: mankind
  • Rôle: karaté
  • Ville: rouen

Offline RaHoW

  • Base
    • Pouet.net
    • View Profile
    • Apex - official site
  • Ancienneté: 1993
  • Groupe: Apex
  • Rôle: Gfx, code, orga
Re : Un workspace pour les flemards ^^
« Reply #13 on: 09 October 2010 à 17:44:24 »
Ouai de toutes manières je re-attaque tout plus ou moins depuis le début vis-à-vis de mes connaissances en C, parce que sinon je pourrais de toutes manieres jamais comprendre comment manipuler les framework disponibles.

Je voulais tester celui de Iq mais il dl plus chez moi... de toutes manières je vais faire quelques trucs "dans mon coin" histoire de monter d'abord mon skill général, et après je verrais...

Juste une question: est-ce que ce framework 64k est prevu pour inclure facilement des datas à l'exécutable ??
=RaHoW/Apex=

Offline LLB

  • Base
    • Pouet.net
    • Coup de coeur
    • View Profile
    • site perso
  • Ancienneté: 2000
  • Groupe: Ctrl-Alt-Test
  • Rôle: code
  • Ville: Munich
Re : Re : Un workspace pour les flemards ^^
« Reply #14 on: 09 October 2010 à 19:18:28 »
Juste une question: est-ce que ce framework 64k est prevu pour inclure facilement des datas à l'exécutable ??
Non, il n'y a rien de spécifique pour ça, mais ce n'est pas bien compliqué.