GDI+ nestačí   otázka

VB.NET, XNA, DirectX, WinForms

Dobrý den potřeboval bych poradit.Programuji aplikaci v které se hýbe spousta věcí,přesouvají se,mění velikost,...Ale GDI+ pomalu přestává stačit při vykreslování.Chtěl bych poradit zda by bylo vhodné přejít na directX a celé přeprogramovat?V directX jsem ještě,krom příkladů z webu,nedělal.

Zkuste prosím poradit.Děkuji

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Poradit neumím, ale chci upozornit na možnost, že GDI stačí, ale grafika počítače nestíhá. Mám aplikaci, která demonstruje vypočítané křivky. Jde mi na počítači až nudně pomalu, tak jsem průběh vykreslování nijak nebrzdil. Když jsem program spustil na jiném počítači, průběh vykreslování téměř nešlo zrakem zaregistrovat. Když na mém počítači po spuštění aplikace na okamžik její okno minimalizuji, je po obnovení okna hotovo - odhadem asi 8x rychleji. Evidentně to zdržuje můj grafický HW.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

To nic nemění na tom, že s DirectX to bude daleko rychlejší a zvládne to i slabší stroj (pokud to tedy není úplně stará herka). Záleží, jaký typ aplikace chcete dělat, pokud toho chcete vykreslovat opravdu hodně, nebo jde o hru, určitě DirectX zkuste. NEbo vydržte pár týdnů, začne zde nový seriál o XNA, což je moc pěkná sada knihoven pro psaní her a grafických aplikací. Umí 2D i 3D grafiku.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

A s nějakým pokračováním započaté minisérie článků o DirectX již neuvažujete? (alespoň někdy do budoucna?)

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Nevím.možná to je docela hloupej dotaz ale dá se v directX programovat jako v plnohodnotem prog. jazyce? tím myslím to,že prou mou aplikaci je to potřebné,tak abych vysvětlil o co vlastně jde že?

Jedná se o ,v podstatě, bezučelnou aplikaci která má "nahradit"

grafické rozhraní OS,aby si někdo nemyslel že fušuju do řemesla vývojářum z Microsoftu to zase ne.Je to aplikace .exe a je pouze na uživateli zda ji zapne a jestli ji třeba za 5 minut vypne.Jedná se o to že se spustí onen program, v něm se nachází vše jako ve windows (tento PC,složky,...)jen jinak uspořádané a graficky fozvržené,jde o(momentálně) jednoduchou aplikaci která přes "ikonky"(pictureboxy) by měla mít možnost s odkazem na OS vytvořit třeba nový text. dokument a tak dále.Chtěl jsem trošku něco jiného ale vzniklo toto.A nevypadá to špatně jen ještě musim přijít na to,jak pomocí toho programu vytvořit třeba novou složku,dokument a tak dále...

Pokud si někdo myslí že je to beznadějné,na nic popřípadě zbytečné,asi má pravdu ovšem muj názor je že být těchto názoru více,neprogramujeme,nebylo by pro koho.

Ale zpět k tématu,kdyby mi s tim chtěl někdo pomoci nebo ho to jen zajímá rád se pochlubim ukázkou...

ps:něco podobného jako je program Yod´m 3D,pokud někdo zná?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Dá se v DirectX programovat jako v plnhodnotným programovacím jazyce? To snad nemyslíte vážně?

DirectX je jenom knihovna, v DirectX se programovat nedá. Programuje se ve VB.NET, C# nebo jiném programovacím jazyce a pouze voláte funkce knihovny DirectX.

Z těch tří článků o DirectX, které jsou tady na serveru, byste měl zjistit, jak načíst obrázek a jak ho vykreslit. To by vám mělo stačit.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Omlouvám se,to jsem napsal dost špatně,vím že se programuje ve vb.net ale myslel jsem to tak zda se v něm programuje jako například v GDI+ které mi přijde jednoduché,ale zřejmě to bude něco uplně jiného že?A to s tim obrázkem to máte pravdu ale mohl by jste mi prosím poradit jak z obrázku udělat tlačítko?

Ty články právě čtu,ale tento příklad(jak vytvořit tlačítko)jsem nenašel.

Pokud to vše chápu špatně tak se omlouvám,nejsem v myšlení nejrychlejší :o)

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Tlačítko DirectX neumí, pokud vykreslujete přes DirectX, musíte si tlačítko naprogramovat sám. Tlačítko umí jen knihovna System.Windows.Forms, kterou nemůžete míchatzároveň s DirectX, resp. můžete, ale nemůžete dát tlačítko na místo, které vykreslujete přes DirectX.

Stačí tedy sledovat v každém snímku pozice myši a stav levého tlačítka a pokud je kurzor myši na určitých souřadnicích a levé tlačítko stisknuté, tak něco provést.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Aha,tak takhle se na to musí,to je ale ovšem ještě lebší,mohl by jste zvědavému žáčkovi napovědět,popřípadě ukázat,více?(anglicky neumim,ani kontrolovat pozici myši a už vubec ne kontrolovat tlačítko)

děkuji za rady,tento web je dost poučný.

Mohu se zeptat proč jste již nezbohatl na nějakém programu?Snad to není nevhodná otázka ale přijde mi že je jen velmi málo co nevíte o programování a PC světě.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

S tou myší se podívám, jak se to dělá, z hlavy to nevím.

K tomu zbohatnutí - neřekl náhodou Sokrates "vím, že nic nevím". Vím toho dost, ale pořád je spousta lidí, kteří toho ví o programování daleko víc a hlavně mají zkušenosti. Poslední dobou zjišťuji, že programovat umí mnoho lidí. Znají svůj programovací jazyk, ale nic jiného už moc ne. Netuší některé souvislosti, neví, jak to funguje uvnitř, neznají základní obecné postupy.

Co se týče toho zbohatnutí, není to tak jednoduché, jak to vypadá. Ono nestačí jenom mít dobrý nápad. Musíte ten program napsat, musíte ho dokončit (což se ne vždy povede), ale pak to teprve začíná - musíte udělat reklamu, musíte program prodat.

Pokud vás programování baví a chcete se jím živit, určitě to poznáte.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Programování mne baví,bohužel nevím zda k němu mám vlohy.Mám nápad a mám i chuť,jen nemám dostatek zkušeností na to abych "šel za svim snem".

Děkuji že se mi podíváte po tom kodu,tak obětavých lidí je dnes málo (tím nechci urazit ostatní na tomto webu i mimo něj)

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:  
Heslo:  

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback