Comments (13)
Moving to 64-bit - almost no serious problems.
As for multithreading - I have no idea for now. First priority is to fix bugs (lots of them), move original libraries out of the repository, organize includes and subdivide xrGame into multiple modules.
from xray-15.
I understand. Multithreading is a big project, I just thought I'd throw it out there since CS is single-core mostly.
from xray-15.
But is that really a bottleneck on modern CPUs? I think majority of slowdowns come from a very unoptimized renderer. MT might be difficult to achieve since xray was mostly written with a monolithic design in mind.
@nitrocaster is there any chance of seeing SoC code @ github? I'm aware that there's a very active Russian project out there but it uses svn and all commits/docs seem to be written in Russian so unfortunately potential contributors are deterred. CoP is also said to follow, any news on that?
from xray-15.
@fagoatse Rendering is always bottleneck in all games I've ever seen. SoC sources, as far as I remember, present at BitBucket, but I don't remember repo name. But username is "stalker".
@Swartz27 CS is not multithreaded - but it is not good - when we will complete all current tasks, we, I hope, will try to make it multicore and multithreaded.
from xray-15.
@fagoatse Don't think, profile it.
As for 'very active Russian project', here are two public SoC repos:
1] https://xp-dev.com/sc/204486/HEAD
2] https://bitbucket.org/stalker/x-ray
I nave no plans to mess with old SoC code - there were too many changes in CS and any work on SoC code is just wasting time.
Also there's a public CS repo: https://bitbucket.org/stalker/clearsky
But I don't see any serious work there (just reckless mega-commits without any plans)
(another thing is that I don't like bitbucket :) )
In fact, I haven't seen any good docs about x-ray sources.
from xray-15.
- Rendering is always bottleneck in all games I've ever seen.
You'r wrong. Stalker has pretty complicated AI but pretty simple r1 renderer that runs so fast that GSC released a special patch that slows it down (to prevent some artefacts and GPU overheating).
Another good example is Minecraft - really simple renderer but very complicated game logics.
from xray-15.
@nitrocaster because nobody wants to dig deep in code, that was written in 2003-2004... :) And C++ is much harder and bigger than modern langs, like C# or Java, so, there aren't many coders, who understand XRay sources.
I also think, that SoC is too old and featureless platform for editing and modding.
from xray-15.
You'r wrong.
I don't think so. S.T.A.L.K.E.R. has r3 and r4 - they aren't so fast. I'm not talking about r1 - because it is really simple. Rendering on r3 is much more slow than on r1. AI runs fast enough - thanks to LuaJIT.
Minecraft:
- Java(VM and other "cookies")
- Shitcode(written by one person at the beginning of dev)
- Huge number of additional libs(LWJGL and other 4+ libs)
- Renderer is not simple, as it is highly customizable.
from xray-15.
-
- Renderer is not simple, as it is highly customizable.
'Simple' means 'simple for hardware', that's it.
from xray-15.
@nitrocaster I'll try to hook up https://github.com/CyberShadow/verysleepy and do some profiling when I find some time but without proper docs and actual comments its difficult to navigate through such a large codebase. At this point cleaning up and organizing things is more important than worrying about threading and such. And then again there are those rumours about CoP source getting leaked which might be even a better codebase to work on. However, working on 3 versions of the same engine seems like an even bigger waste of time and resources. The main goal should be to turn xray into equivalent of ioquake and loading SoC, CS and CoP as assets.
from xray-15.
- At this point cleaning up and organizing things is more important than worrying about threading and such.
Exactly. Complicated and long-term modifications will be easier once we have organized codebase.
- And then again there are those rumours about CoP source getting leaked which might be even a better codebase to work on.
Rumours. Loxotron (a user that published leaked sources) wrote (literally) "CoP sources will be later on".
- The main goal should be to turn xray into equivalent of ioquake and loading SoC, CS and CoP as assets.
Honestly, I planned to fix bugs and tweak multiplayer, but ... whatever :) Another reasonable task is to get editors compiled completely in MSVC.
from xray-15.
Also, for profiling: you can use Visual Studio profiler.
from xray-15.
"Rumours. Loxotron (a user that published leaked sources) wrote (literally) "CoP sources will be later on"."
I sent him a PM about the COP source and he told me that his NDA with GSC ends in the Fall and he plans on an October release most likely.
from xray-15.
Related Issues (16)
- GameSpy server is not available
- Windows SDK issue HOT 5
- Trouble compiling xrEngine HOT 1
- oalib_mt.lib HOT 2
- xrGame compile issue HOT 7
- Bizzare problem HOT 2
- Is the OpenGL renderer done? HOT 1
- Linux executable? HOT 1
- Remove Visual C++ 2005 runtime dependencies
- Remove original 3rd party library sources and binaries
- Update Opcode in xrCDB
- dxguid.lib troubles HOT 2
- OpenAL Sound issues HOT 5
- Update LUA HOT 12
- Windows SDK issue HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from xray-15.