Thread: Newb Alert! ----> BOOGIEMAN

  1. #1
    Registered User
    Join Date
    Dec 2001
    Posts
    9

    Newb Alert! ----> BOOGIEMAN

    Hey I have a few questions. Well, thousands actually but I guess I'll start with just one or three.

    I need some advice on a few things. I took C++ and adv. C++ in college but they didn't teach me anything beyond a cmd prompt. Now I'm tring to get familiar with the Visual C++ environment and learn more about directx or OpenGL(perferably).

    1.)Which libraries does MS Visual C++ 6.0 use so that I might learn the functions available to me?

    2.) A.)If I program in Win32 apps can it be portable to different Operating Systems?(I'm sure MFC cannot). B.) If not what API should I learn thats not any harder to learn?

    3.)Has anyone found a tutorial on the web for designing or programming a 3D world builder or anysort. I know thats way to advanced for me at this point but I want to get a jump on it. (thats me, Jump in head first).



    Thanks guys,

  2. #2
    Grammar Police HybridM's Avatar
    Join Date
    Jan 2003
    Posts
    355
    2.A) Portable to different versions of windows. That's about it AFAIK.
    Thor's self help tip:
    Maybe a neighbor is tossing leaf clippings on your lawn, looking at your woman, or harboring desires regarding your longboat. You enslave his children, set his house on fire. He shall not bother you again.

    OS: Windows XP
    Compiler: MSVC

  3. #3
    Banned nickname_changed's Avatar
    Join Date
    Feb 2003
    Location
    Australia
    Posts
    986
    Its been my experience that if you can't write a windows program (as in with an actual window and some other stuff) you'll find it hard to get into DirectX/OpenGL.

    MSVC++ can support both libraries, and in fact both have been designed to work primarily with VC++ (esp. direct draw).

    My advice would be to learn to write windows applications (especially get used to the message handling ideas) before going to one of those libraries. Charles Petzolds "Programming in Windows, 5th edition" is excellent for this, I'm reading it right now.

    Windows programs are not portable (although its possible to use them on linux through WINE/WINEX, but thats not true portability). If you go for a graphics library and portability is a big issue then learn OpenGL, the OpenGL code you use will be portable, but the windows code wont be and will need to be re-written.

  4. #4
    Amateur
    Join Date
    Sep 2003
    Posts
    228
    You have to know quite well your language before trying to do some non-standard library programming.

    If you don't know how Windows works, you won't be able to understand well neither OpenGL nor DirectX, the reason is:
    1) OpenGL depends a lot on Windows programming if you want to use the Windows programming advantages; if you want it to be portable, however, you can make use of some other libraries to wrap the OS-dependent part.
    2) DirectX uses a subset of the Windows technologies, it's COM. Well, you can learn *only* COM but I don't tkink it is a great idea.

    thats me, Jump in head first
    My piece of advice is that you lose that way of thinking.

  5. #5
    Hardware Engineer
    Join Date
    Sep 2001
    Posts
    1,398
    You include <windows.h> and you get all the WinAPI functions(Windows Application Programming Interface).

    Here's a link to The Sunlight Windows Tutorials.

    I also recommend the Petzold book.

    You can use the WinAPI functions directly (which is what Petzold teaches), or you can use MFC (Microsoft Foundation Class) which is a "wrapper" for the WinAPI... sort-of a higher level library.

    One of the reasons that your classes didn't cover any GUI, is because it's not portable. ANSI/ISO standard C++ doesn't have any graphics, mouse, or sound... It only requires a keyboard, a text-display, and disk storage (and a CPU & RAM, etc.) The other reason is that it's a lot to learn. You don't just add a couple of functions to get a window. Petzold's "Hello Windows" program is about two pages of code!

  6. #6
    Registered User
    Join Date
    Dec 2001
    Posts
    9

    Cool, Cool..

    Alright. My O.S. is XPpro but I want to program with true portability between different O.S. couldn't I use Borland with OpenGL or something? I've never even seen a borland compiler and I'm only familiar with MS Visual Studio. How good is borland compared to MSVC++?


    And as for Librarys, I guess I didn't specify. I mean to say, what are the standard libraries for MS VC++ MFC & standard Win32. I need to learn my functions.

    P.S.
    What is a good borland API? What libraries would I use for a borland compiler?

    Thanks guys,
    Love, peace, and chicken grease!

    Sincerly,
    The BOOGIEMAN
    Last edited by BOOGIEMAN; 10-10-2003 at 12:29 PM.

  7. #7
    Amateur
    Join Date
    Sep 2003
    Posts
    228
    Well, Borland vs. MS is a long long discussion and you may end up with an entire thread full of stupid remarks in the end, it depends on the opinion of people present...
    I will advise that:
    1) If you want to have a fast development environment with RAD and all the easy-way to do things, then, take C++Builder.
    2) If you want more performances, then take MSVC.
    3) If you want .NET compatibility, take MSVC.
    4) If you want to do some DirectX *easily* (you can with BCC but it's harder), take MSVC.
    5) If you want to do some portable RAD GUI, then take BCC because I believe you can take it to Kilyx without much problems. But I don't use *nix so...
    6) If you plan onto using the Intel stuffs later, you have to take MSVC.
    7) If you want to do some low-level stuffs, I'd rather take MSVC but this one is a matter of taste, however, if you want to do low-level programming, you are probably a speed seeker.
    8) And at last, if you want to target Itanium-based computers, you have to take MSVC because you'll need Intel compiler.

    About the libraries stuffs, download the Platform SDK at microsoft website, you'd want to have its up to date & complete documentation instead of going to MSDN every now and then. Besides, the binaries are up to date too...
    But this SDK is compatible MSVC only.

    Under Windows, there are no standard things, just official (that means MS) things and non-MS things.
    Well, here's a list of things covered by the platform SDK: (from teh PSDK itself)

    Access Control
    Active Accessibility
    Active Directory
    Active Directory Services Interface (ADSI)
    Active Server Pages (ASP)
    ActiveX Data Objects (ADO)
    ADO
    ADSI
    ASP
    Authorization Manager
    Automation
    Background Intelligent Transfer Service (BITS)
    BITS
    Bluetooth
    CDO
    Certificate Enrollment Control
    Certificate Services
    Collaboration Data Objects
    COM
    COM+
    Common Controls
    Cryptography
    Debugging and Error Handling
    Device I/O
    Dfs
    DHCP
    Distributed File System (Dfs)
    DLLs, Processes, and Threads
    DNS
    Domain Name System (DNS)
    Dynamic Host Configuration Protocol (DHCP)
    EAP
    Extensible Authentication Protocol (EAP)
    Extensible Markup Language (XML)
    Fax Service
    GDI
    GDI+
    Group Policy
    HTTP
    IAS
    ICM
    ICS and ICF
    IIS
    Image Color Management (ICM)
    Indexing Service
    Infrared Data Association (IrDa)
    Internet Authentication Service (IAS)
    Internet Connection Sharing and Firewall (ICSF)
    Internet Explorer
    Internet Information Services (IIS)
    Internet Protocol Helper (IP Helper)
    Interprocess Communications
    IP Helper
    IrDa
    LDAP
    Lightweight Directory Access Protocol (LDAP)
    LSA Authentication
    LSA Policy
    MADCAP
    MAPI
    MDAC
    Memory Management
    Message Queuing (MSMQ)
    Messaging Application Programming Interface (MAPI)
    Microsoft .NET Passport
    Microsoft Agent
    Microsoft Data Access Components (MDAC)
    Microsoft Interface Definition Language (MIDL)
    Microsoft Management Console (MMC)
    Microsoft Transaction Server (MTS)
    MIDL
    MMC
    MSMQ
    MTS
    Multicast Address Dynamic Client Allocation Protocol (MADCAP)
    Multicast Group Manager
    National Language Support
    NetMeeting
    NetShell
    Network Load Balancing Provider
    Network Management
    Network Monitor
    Network Provider API
    ODBC
    OLE DB
    OLE DB Provider for Internet Publishing
    OnNow
    Open Database Connectivity (ODBC)
    OpenGL
    Password Filters
    PC Health
    Performance Monitoring
    Plug and Play
    Power Management
    QOS
    Quality of Service (QOS)
    RAS
    Real-time Communications (RTC) Client
    Remote Access Service (RAS)
    Remote Procedure Call (RPC)
    Removable Storage Manager (RSM)
    Routing and Remote Access Service (RRAS)
    Routing Table Manager Version 1 (RTMV1)
    Routing Table Manager Version 2_(RTMV2)
    RPC
    RRAS
    RSM
    RTC Client
    SDO
    Security Support Provider Interface (SSPI)
    SENS
    Server Cluster API
    Server Data Objects (SDO)
    Service Security Attachments
    Setup API
    Shell
    Side-by-side Assemblies
    Simple Network Management Protocol (SNMP)
    Smart Card
    SNMP
    SSPI
    Still Image
    Storage
    Structured Storage
    Synchronization Manager
    System.DirectoryServices
    System Event Notification Service (SENS)
    System Restore
    Tablet PC
    TAPI Service Providers (TSPI and MSPI)
    TAPI version 2.2
    TAPI version 3
    Task Scheduler
    Telephony Application Programming Interface (TAPI) 2.2
    Telephony Application Programming Interface (TAPI) 3
    Telephony Service Provider Interface (TSPI)
    Terminal Services
    Text Services Framework
    Unicode
    Universal Description, Discovery, and Integration (UDDI)
    Universal Plug and Play
    Video for Windows
    Win32 API
    WIA
    Windows API
    Windows Clustering
    Windows File Protection
    Windows GDI
    Windows Image Acquisition (WIA)
    Windows Installer
    Windows Management Instrumentation (WMI)
    Windows Multimedia
    Windows Sockets
    Windows System Information
    Windows User Interface
    Winlogon (and Gina)
    WinSNMP
    WMI
    XML

    Have fun learning!

    [edit]There are subjects that repeat in the list but I think it is because they have had their name changed and the index keep them there to redirect people who don't know the new name. Besides, they overlap, for example, Windows API covers GDI.
    Last edited by lyx; 10-10-2003 at 01:43 PM.

  8. #8
    Registered User
    Join Date
    Dec 2001
    Posts
    9

    Groovie!

    Thanx guys, I appriciate it.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. small -> big -> bigger -> bigger than bigger -> ?
    By happyclown in forum A Brief History of Cprogramming.com
    Replies: 9
    Last Post: 03-11-2009, 12:12 PM
  2. Dev-C++ -> Tools - > Editor -> Syntax
    By Yuri2 in forum C++ Programming
    Replies: 19
    Last Post: 07-03-2006, 07:48 AM
  3. > > > Urgent Help < < <
    By CodeCypher in forum C Programming
    Replies: 2
    Last Post: 01-31-2006, 02:06 PM
  4. DirectX errors (newb alert)
    By confuted in forum Game Programming
    Replies: 2
    Last Post: 07-19-2003, 09:20 AM