Zobrazit předchozí téma :: Zobrazit následující téma |
Autor |
Zpráva |
Denoy
Založen: 01. 05. 2012 Příspěvky: 13
|
Zaslal: 1. květen 2012, 18:38:10 Předmět: OpenGL Screen |
|
|
Zdravím všechny,
chci se zeptat, mám kód (uveden níže), kterým chci screenovat obrazovku, avšak se screen uloží celý černý. V OpenGL začínám, tak neznám jěště všechnu teorii, ale na mém kódu se mi také něco nezdá. Myslím si, že bych měl přes OpenGL jěště do obrázku 'něco' zapsat, nějak ho vykreslit, nevím jak to napsat a ani nevím pod čím to hledat, aproto se spíše ptám na teorii co do mého kódu přidat, aby byl funkční.
kód: |
Dim screen2 As System.Drawing.Bitmap
screen2 = New System.Drawing.Bitmap(width, height, System.Drawing.Imaging.PixelFormat.Format32bppArgb)
Dim bd As System.Drawing.Imaging.BitmapData = screen2.LockBits(New Rectangle(0, 0, width, height), Drawing.Imaging.ImageLockMode.[WriteOnly], Drawing.Imaging.PixelFormat.Format32bppArgb)
GL.glReadPixels(0, 0, width, height, GL.GL_RGB, GL.GL_UNSIGNED_BYTE, bd.Scan0)
screen2.UnlockBits(bd)
screen2.Save("c:\test.bmp", System.Drawing.Imaging.ImageFormat.Bmp)
screen2.Dispose() |
Díky moc za odpovědi! |
|
Návrat nahoru |
|
 |
nou

Založen: 28. 07. 2007 Příspěvky: 1050
|
Zaslal: 1. květen 2012, 20:57:33 Předmět: |
|
|
co to je za jazyk? asi by som zmenil GL.GL_RGB na GL.GL_BGRA alebo Drawing.Imaging.PixelFormat.Format32bppArgb na Drawing.Imaging.PixelFormat.Format32bppRgb alebo nieco podobne _________________ Najjednoduchšie chyby sa najtažšie hľadajú. |
|
Návrat nahoru |
|
 |
manutara

Založen: 02. 01. 2012 Příspěvky: 81 Bydliště: Kosice SVK
|
Zaslal: 1. květen 2012, 21:01:51 Předmět: opengl |
|
|
zdravim,
mno vyzera to ako basic, hmm, ale inak neporadim. skor basic opengl
tutorial niekde na nete... _________________ hadam to OpenGL este par rokov prezije |
|
Návrat nahoru |
|
 |
Ladis

Založen: 18. 09. 2007 Příspěvky: 1537 Bydliště: u Prahy
|
Zaslal: 2. květen 2012, 08:57:04 Předmět: |
|
|
Před 9 lety jsem to napsal takhle a furt to funguje (C++/SDL; pro začátek to okomentované prohození řádků ignoruj):
http://nopaste.ceske-hry.cz/223431
Podle mě ti to vůbec neuloží do toho tvýho objektu, protože jinak by tam byly aspoň nesmysly (když by ti nesedělo RGB/BGR nebo RGBA/RGB apod.). _________________ Award-winning game developer |
|
Návrat nahoru |
|
 |
Tringi

Založen: 28. 07. 2007 Příspěvky: 290
|
Zaslal: 2. květen 2012, 09:32:42 Předmět: |
|
|
Ladis: Nemůže jít o starší OpenGL driver, který by zobrazoval "overlay"? Nebo se to používalo jen pro video? _________________ WWW | GitHub | TW |
|
Návrat nahoru |
|
 |
Ladis

Založen: 18. 09. 2007 Příspěvky: 1537 Bydliště: u Prahy
|
Zaslal: 2. květen 2012, 12:31:12 Předmět: |
|
|
Haha, i 3Dfx Voodoo 1 a 2, které byly zapojené na cestě mezi grafikou a monitorem, uměly sejmout screenshot . Ne, není to jako overlay - i ten se ale dá sejmout, jen musíš snímat overlay a ne obraz. I když dneska už to je jedno, jakmile ve WIndows zapneš Aero, tak se overlay nikdy nepoužívá (proto funguje obyčejný PrintScreen). _________________ Award-winning game developer |
|
Návrat nahoru |
|
 |
mnn
Založen: 23. 07. 2008 Příspěvky: 23
|
Zaslal: 2. květen 2012, 13:25:36 Předmět: |
|
|
Je ešte možné, že sa jedná o Windows Vista/7 - tam sa totiž takto nedá urobiť screenshot, minimálne ak sa jedná o DirectX aplikáciu (OpenGL neviem, ale vyzerá to tak, že áno). |
|
Návrat nahoru |
|
 |
Denoy
Založen: 01. 05. 2012 Příspěvky: 13
|
Zaslal: 2. květen 2012, 17:21:15 Předmět: |
|
|
Ano jedná se o Basic.
Ladis díky za ten odkaz, každopádně nevím, jak to přepíšu do Basicu. |
|
Návrat nahoru |
|
 |
manutara

Založen: 02. 01. 2012 Příspěvky: 81 Bydliště: Kosice SVK
|
Zaslal: 2. květen 2012, 18:47:22 Předmět: basic + opengl |
|
|
zdravim,
basic (visual basic) a opengl, hmm pekna kombinacia hehe,
ale ak velmi chces a basic ti je blizky tak skus precitat napr. toto
http://home.pacific.net.hk/~edx/contents.htm
necital som to cele, ale co som porozumel, tak v principe to ide.
inak ak chces chvilu ostat pri opengl mozno by nebolo zle skor to c
popripade c++, zatim.... _________________ hadam to OpenGL este par rokov prezije |
|
Návrat nahoru |
|
 |
Denoy
Založen: 01. 05. 2012 Příspěvky: 13
|
Zaslal: 2. květen 2012, 19:34:26 Předmět: |
|
|
Vyzkouším něco nového, doporučte mi prosím program v C++ pro začátečníky, nebo něco přehledného v čem nebudu 'tápat' co a jak, díky moc. |
|
Návrat nahoru |
|
 |
manutara

Založen: 02. 01. 2012 Příspěvky: 81 Bydliště: Kosice SVK
|
|
Návrat nahoru |
|
 |
Denoy
Založen: 01. 05. 2012 Příspěvky: 13
|
Zaslal: 2. květen 2012, 20:20:18 Předmět: |
|
|
Díky moc za ty odkazy, každopádně jsi poslal XNA což je další možnsot jak vyfotit screen ve hře a uložit jej jako obrázek? |
|
Návrat nahoru |
|
 |
manutara

Založen: 02. 01. 2012 Příspěvky: 81 Bydliště: Kosice SVK
|
|
Návrat nahoru |
|
 |
Denoy
Založen: 01. 05. 2012 Příspěvky: 13
|
Zaslal: 2. květen 2012, 20:50:41 Předmět: |
|
|
Já ani nechci nic složitého, chci pouze vytvořit screen ve hře a šel jsem od bitmapy, která zobrazí pouze 2D takže screen byl černý až po DirectX kde mi nešla impletace do aplikace až k opengl a příjde mi fakt už nahlavu, abych hledal takováto řešení na vytvoření screenu, ale jaksi nelze jinak ... |
|
Návrat nahoru |
|
 |
Denoy
Založen: 01. 05. 2012 Příspěvky: 13
|
Zaslal: 2. květen 2012, 20:52:27 Předmět: |
|
|
Jěště k té XNA, co bude potřebovat klient, když bude mít naisntalovaný pouze .NET Framework4 k tomu, aby dannou aplikaci rozjel a byla funkční? (Chci toto řešení pouze pro Vista+) |
|
Návrat nahoru |
|
 |
|