GUI + B3D

Übersicht BlitzBasic BlitzPlus

Neue Antwort erstellen

 

Schaf

Betreff: GUI + B3D

BeitragMo, Feb 13, 2006 17:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,
Ich kann in BlitzPlus Fenster erstellen, in denen es Canvässe (?) gibt und in B3D 3D Objekte. Kann ich irgendwie ein Canvasfenster machen, in dem 3D-Objekte sind?.
Mäh!

eleXity

ehemals "BlackProgrammer"

BeitragMo, Feb 13, 2006 20:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi

hoffe es hilft hab das auf BlitzBasic.com gefunden
MFG

Code: [AUSKLAPPEN]


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
;  3D Test: BlitzPlus + Blitz3D
;       by: Luis Enrique Braga Ramirez
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

-------------- decls CODE --------------
--------- Blitz3d+BlitzPluz.decls ------
 
.lib "User32.dll"

FindWindow%(class$, fenster$):"FindWindowA"
GetActiveWindow%()
SetParent%(hWndChild,hWndNewParent)
ShowWindow% (hwnd%, nCmdShow%): "ShowWindow"

-------------- decls CODE END --------------

; BLITZ PLUS CODE #################################

Global Window   = CreateWindow("BlitzPlus + Blitz3D" , 0 , 0 , 640 , 520 , Desktop()  , 1+4+8 )
Global MainHwnd = GetActiveWindow();User32.dll
SetStatusText(Window,"BlitzPlus + Blitz3D")

Global Menu  = WindowMenu( Window )
Global File  = CreateMenu( "File"  , 0 , Menu )
Global Close = CreateMenu( "Close" , 1 , File )
UpdateWindowMenu Window

ExecFile("Window3D.exe")

Repeat
   vwprt = FindWindow("Blitz Runtime Class" , "Window3D"); User32.dll
   If WaitEvent() = $803 Then End
Until vwprt <> 0

SetParent(vwprt,MainHwnd);User32.dll
SetWindowPos( vwprt , 0 , -2 , -30 , 640 , 480 , 0);User32.dll
ShowWindow% (vwprt ,1) ;User32.dll


Repeat

If WaitEvent()>0 Then

  Select EventID()

         Case $803
               End
         Case $1001
              Select EventData()
              Case 1
                   End   
              End Select ;Select EventData()

  End Select ;Select EventID()


EndIf

Forever

End ;

; BLITZ 3D CODE ##################################

If Windowed3D ()

 Graphics3D 640 , 480 , 16 , 2
 AppTitle("Window3D")
 hwnd = GetActiveWindow() ;User32.dll
 ShowWindow% (hwnd ,0)    ;User32.dll

 SetBuffer BackBuffer()

Else

  End

EndIf

Global camera = CreateCamera()
Global light  = CreateLight()
Global cube   = CreateCube()

CameraViewport camera,0 ,0 , 640 , 480

PositionEntity light,-3,0,3
PositionEntity camera,-3,5,-1
ScaleEntity cube,2,2,2
PointEntity camera,cube


Repeat
        TurnEntity cube,0.5,0.5,0.5

      UpdateWorld
      RenderWorld
      Flip
   
Until FindWindow( "BlitzMax_Window_Class" , "BlitzPlus + Blitz3D" ) = 0 ;User32.dll

End

nVidia 570GTX | AMD Phenom II X6 | 8 GB RAM | 1TB | Win 7 Ultimate 64 SP1 | B3D, BMAX, BP, C#

Projekt : Worklog
 

Schaf

BeitragMo, Feb 13, 2006 21:39
Antworten mit Zitat
Benutzer-Profile anzeigen
ok ich versuchs. Ich hab noch nie eine DLL benutzt. Deswegen weiß ich ne ob dieses User32.dll eine vorgegebene dll ist. Wenn nein wo krieg ich die dann eigentlich her?
Mäh!

eleXity

ehemals "BlackProgrammer"

BeitragMo, Feb 13, 2006 22:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi

Die user32.dll ist eine windows dll die du also im system32
ordner hast ...

du musst den teil
Code: [AUSKLAPPEN]

.lib "User32.dll"

FindWindow%(class$, fenster$):"FindWindowA"
GetActiveWindow%()
SetParent%(hWndChild,hWndNewParent)
ShowWindow% (hwnd%, nCmdShow%): "ShowWindow"

einfach in eine beliebige .decls datei schreiben und dann in den
installationsordner von BlitzPlus packen, Fertig

dann noch die einzelnen codes also BP und B3D
compilieren und Fertig
wenn du noch fragen hast schreib einfach hier rein ...

Edit :
mir ist gerade aufgefallen das er
(der, der das eigentlich geschreiben hat)

diese zeile in der .decls vergessen hatte

Code: [AUSKLAPPEN]

SetWindowPos% (hwnd%, hWndInsertAfter%, x%, y%, cx%, cy%, wFlags%) : "SetWindowPos"


MFG
nVidia 570GTX | AMD Phenom II X6 | 8 GB RAM | 1TB | Win 7 Ultimate 64 SP1 | B3D, BMAX, BP, C#

Projekt : Worklog
 

Schaf

BeitragFr, Feb 17, 2006 10:46
Antworten mit Zitat
Benutzer-Profile anzeigen
und wie schreib ich ne Decls? ^^'
Mäh!

Dante

BeitragFr, Feb 17, 2006 10:51
Antworten mit Zitat
Benutzer-Profile anzeigen
einfach im Texteditor alles eingeben
und dann als .decls abspeichern! Fertig^^

so leicht ist das Very Happy
 

Schaf

BeitragFr, Feb 17, 2006 14:02
Antworten mit Zitat
Benutzer-Profile anzeigen
ja soweit wäre ich auch gekommen ^^

Ne jetz ma wirklich, wie schreibt man eine Decls, die die Dll aufruft und Befehle macht
Mäh!

Jan_

Ehemaliger Admin

BeitragFr, Feb 17, 2006 14:07
Antworten mit Zitat
Benutzer-Profile anzeigen
du nimmst einen Editor, gibst deine Dll an, und ihre Befehle mit den Parametern.
Notepad ist ein sehr geeigneter editor dafür.
between angels and insects
 

Schaf

BeitragFr, Feb 17, 2006 14:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja aber wie "dll" angeben. Ich hab noch nie eine Dll gehabt und hab echt keine Ahnung, wie man sie einfügt, benutzt oder eine datei wie "Hallo.decls" schreibt. Ich meine, was gehört in die Decls rein (womit, wie) und wie rufe ich sie auf?
Mäh!

eleXity

ehemals "BlackProgrammer"

BeitragFr, Feb 17, 2006 15:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi

Öffne einfach den editor ...
Gib
Code: [AUSKLAPPEN]

.lib "User32.dll"

FindWindow%(class$, fenster$):"FindWindowA"
GetActiveWindow%()
SetParent%(hWndChild,hWndNewParent)
ShowWindow% (hwnd%, nCmdShow%): "ShowWindow"
SetWindowPos% (hwnd%, hWndInsertAfter%, x%, y%, cx%, cy%, wFlags%) : "SetWindowPos"



ein und scpeichere die datei als BlitzPlus3D.decls
in den userlib ordner von Blitz Plus

MFG
nVidia 570GTX | AMD Phenom II X6 | 8 GB RAM | 1TB | Win 7 Ultimate 64 SP1 | B3D, BMAX, BP, C#

Projekt : Worklog
 

Schaf

BeitragFr, Feb 17, 2006 15:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Thx
Mäh!

Neue Antwort erstellen


Übersicht BlitzBasic BlitzPlus

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group