Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 74519
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 10, 20262026-05-10T20:22:15+00:00 2026-05-10T20:22:15+00:00

let me tell you a bit about where this question came from. I have

  • 0

let me tell you a bit about where this question came from. I have been playing around with the SDK of Serious Sam 2, a first person shooter which runs on the Serious Engine 2. This engine introduces something called MetaData. MetaData is used in the engine to serialize classes and be able to edit them in the editor environment (Serious Editor 2). So for example, instead of:

class CSomeGameItem : CEntity {     public:     int iHealthToGive; } 

Which will not show up in the editor, you would do:

meta ver(1) class CSomeGameItem : CEntity _('Some game item') { public:     meta int iHealthToGive; _('Amount of health to give') } 

Now when making a level, you can insert a ‘Some game item’ entity into your level, and edit the one property it has. Now, I know Croteam (the developers of said game and engine) are using an extra compiler (Mdc, meta data compiler) to inject extra information about classes and their variables into the dll files, to make this metadata system possible. Does anyone have any clue as to how they did this?

Oh, btw, the meta, ver() and _() keywords are #define’d to nothing in their code, so the ‘normal’ compiler ignores them.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-10T20:22:16+00:00Added an answer on May 10, 2026 at 8:22 pm

    This looks somewhat similar to Qt’s moc (meta object compiler). In Qt’s case, it generates extra C++ source files which are then compiled and linked together with the original source files.

    A possible implementation in your example would be for the generated files to implement a set of functions which can be called to get the extra information, to set the properties, and so on.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have a bit of a strange question. First let me tell you i
The title is a bit vague, but let me tell you what I want
First let me tell you what my situation is I have 3 service Providers
First of all let me tell you that i have read the following questions
This is maybe unusual so let me set the scene: We have an SVN
I am a bit confused here. This is from a great C book, and
This is a bit hard to explain, so I'll try with an example. Let's
Let me tell you about the problem I am having and how I tried
So we learned a bit about the Turing Test in my AI class. This
First let me tell you what I want to achieve. I want a layout

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.