准备server gamelogic
This commit is contained in:
1 parent
6256dcb52b
commit
6d912005a5
17 files changed
+126
-44
No files matched your search
@@ -12,7 +12,8 @@ MonoBehaviour:
|
|||||||
m_Script: {fileID: 11500000, guid: b79190dcfae6a2f4fbdfc9deccf00ef7, type: 3}
|
m_Script: {fileID: 11500000, guid: b79190dcfae6a2f4fbdfc9deccf00ef7, type: 3}
|
||||||
m_Name: NetworkDriverAsset
|
m_Name: NetworkDriverAsset
|
||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
useSimulator: 0
|
port: 7777
|
||||||
|
useSimulator: 1
|
||||||
packetDelayMs: 500
|
packetDelayMs: 500
|
||||||
packetJitterMs: 300
|
packetJitterMs: 300
|
||||||
packetDropPercentage: 10
|
packetDropPercentage: 10
|
||||||
@@ -227,7 +227,6 @@ GameObject:
|
|||||||
- component: {fileID: 963194228}
|
- component: {fileID: 963194228}
|
||||||
- component: {fileID: 963194227}
|
- component: {fileID: 963194227}
|
||||||
- component: {fileID: 963194226}
|
- component: {fileID: 963194226}
|
||||||
- component: {fileID: 963194229}
|
|
||||||
m_Layer: 0
|
m_Layer: 0
|
||||||
m_Name: Main Camera
|
m_Name: Main Camera
|
||||||
m_TagString: MainCamera
|
m_TagString: MainCamera
|
||||||
@@ -309,18 +308,52 @@ Transform:
|
|||||||
m_Children: []
|
m_Children: []
|
||||||
m_Father: {fileID: 0}
|
m_Father: {fileID: 0}
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
--- !u!114 &963194229
|
--- !u!1 &1613085077
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 1613085078}
|
||||||
|
- component: {fileID: 1613085079}
|
||||||
|
m_Layer: 0
|
||||||
|
m_Name: ClientMain
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 0
|
||||||
|
--- !u!4 &1613085078
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1613085077}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 0}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!114 &1613085079
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
m_PrefabInstance: {fileID: 0}
|
m_PrefabInstance: {fileID: 0}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_GameObject: {fileID: 963194225}
|
m_GameObject: {fileID: 1613085077}
|
||||||
m_Enabled: 1
|
m_Enabled: 1
|
||||||
m_EditorHideFlags: 0
|
m_EditorHideFlags: 0
|
||||||
m_Script: {fileID: 11500000, guid: 694d8256118344eb2b130fceb1a11b7f, type: 3}
|
m_Script: {fileID: 11500000, guid: d126d712307544dd89716677e730aa93, type: 3}
|
||||||
m_Name:
|
m_Name:
|
||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
|
address: 127.0.0.1
|
||||||
|
driverAsset: {fileID: 11400000, guid: a8a5562854ecf4cc1a49700e8bd93c19, type: 2}
|
||||||
--- !u!1 &1936170114
|
--- !u!1 &1936170114
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -374,3 +407,4 @@ SceneRoots:
|
|||||||
- {fileID: 963194228}
|
- {fileID: 963194228}
|
||||||
- {fileID: 705507995}
|
- {fileID: 705507995}
|
||||||
- {fileID: 1936170116}
|
- {fileID: 1936170116}
|
||||||
|
- {fileID: 1613085078}
|
||||||
@@ -42,9 +42,16 @@ namespace ECSTest
|
|||||||
{
|
{
|
||||||
jobHandle.Complete();
|
jobHandle.Complete();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//TODO Render()
|
//TODO Render()
|
||||||
|
|
||||||
|
jobHandle = driver.ScheduleUpdate();
|
||||||
|
jobHandle = new ClientUpdateJob()
|
||||||
|
{
|
||||||
|
driver = driver,
|
||||||
|
unreliablePipeline = unreliablePipeline,
|
||||||
|
reliablePipeline = reliablePipeline,
|
||||||
|
connection = connection,
|
||||||
|
}.Schedule(jobHandle);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -2,6 +2,7 @@
|
|||||||
using Unity.Collections;
|
using Unity.Collections;
|
||||||
using Unity.Jobs;
|
using Unity.Jobs;
|
||||||
using Unity.Networking.Transport;
|
using Unity.Networking.Transport;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
namespace ECSTest
|
namespace ECSTest
|
||||||
{
|
{
|
||||||
@@ -15,11 +16,27 @@ namespace ECSTest
|
|||||||
|
|
||||||
public void Execute()
|
public void Execute()
|
||||||
{
|
{
|
||||||
|
if (connection.Value == default)
|
||||||
|
return;
|
||||||
|
|
||||||
NetworkEvent.Type cmd;
|
NetworkEvent.Type cmd;
|
||||||
while ((cmd = connection.Value.PopEvent(driver, out var stream, out var networkPipeline)) !=
|
while ((cmd = connection.Value.PopEvent(driver, out var stream, out var networkPipeline)) !=
|
||||||
NetworkEvent.Type.Empty)
|
NetworkEvent.Type.Empty)
|
||||||
{
|
{
|
||||||
|
if (cmd == NetworkEvent.Type.Data)
|
||||||
|
{
|
||||||
|
//TODO
|
||||||
|
}
|
||||||
|
else if (cmd == NetworkEvent.Type.Connect)
|
||||||
|
{
|
||||||
|
Debug.Log("[Client] Connected to server");
|
||||||
|
//TODO
|
||||||
|
}
|
||||||
|
else if (cmd == NetworkEvent.Type.Disconnect)
|
||||||
|
{
|
||||||
|
connection.Value = default;
|
||||||
|
Debug.Log("[Client] Disconnected to server");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ namespace ECSTest
|
|||||||
{
|
{
|
||||||
Unit,
|
Unit,
|
||||||
Monster,
|
Monster,
|
||||||
|
Bullet,
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
using System.Collections;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using UnityEngine;
|
|
||||||
|
|
||||||
namespace ECSTest
|
|
||||||
{
|
|
||||||
public class Main : MonoBehaviour
|
|
||||||
{
|
|
||||||
// Start is called before the first frame update
|
|
||||||
void Start()
|
|
||||||
{
|
|
||||||
TestEntityDataBlock.Run();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Update is called once per frame
|
|
||||||
void Update()
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 694d8256118344eb2b130fceb1a11b7f
|
|
||||||
MonoImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
using Unity.Jobs;
|
||||||
|
|
||||||
|
namespace ECSTest.Server
|
||||||
|
{
|
||||||
|
public class GameLogic
|
||||||
|
{
|
||||||
|
public JobHandle Simulate(int beginFrameId, int frameCount, JobHandle dependency)
|
||||||
|
{
|
||||||
|
//TODO
|
||||||
|
return dependency;
|
||||||
|
}
|
||||||
|
|
||||||
|
private JobHandle Step(int frameId, JobHandle dependency)
|
||||||
|
{
|
||||||
|
return dependency;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 51ab02ddeb9e4cdbb736075b2c7b43a8
|
||||||
|
timeCreated: 1765871132
|
||||||
@@ -4,7 +4,7 @@ using Unity.Jobs;
|
|||||||
using Unity.Networking.Transport;
|
using Unity.Networking.Transport;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace ECSTest
|
namespace ECSTest.Server
|
||||||
{
|
{
|
||||||
[BurstCompile]
|
[BurstCompile]
|
||||||
public struct ServerConnectionJob : IJob
|
public struct ServerConnectionJob : IJob
|
||||||
|
|||||||
@@ -0,0 +1,17 @@
|
|||||||
|
using GameCore.TinyECS;
|
||||||
|
using Unity.Burst;
|
||||||
|
using Unity.Jobs;
|
||||||
|
|
||||||
|
namespace ECSTest.Server
|
||||||
|
{
|
||||||
|
[BurstCompile]
|
||||||
|
public struct SpawnBulletJob : IJob
|
||||||
|
{
|
||||||
|
public WorldManager worldManager;
|
||||||
|
|
||||||
|
public void Execute()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 9cfef090e4d64e91bf319abd48fe7e18
|
||||||
|
timeCreated: 1765877986
|
||||||
@@ -7,7 +7,7 @@ using Unity.Jobs;
|
|||||||
using Unity.Networking.Transport;
|
using Unity.Networking.Transport;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace ECSTest
|
namespace ECSTest.Server
|
||||||
{
|
{
|
||||||
public class ServerMain : MonoBehaviour
|
public class ServerMain : MonoBehaviour
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ using Unity.Jobs;
|
|||||||
using Unity.Networking.Transport;
|
using Unity.Networking.Transport;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace ECSTest
|
namespace ECSTest.Server
|
||||||
{
|
{
|
||||||
[BurstCompile]
|
[BurstCompile]
|
||||||
public struct ServerReceiveJob : IJobParallelForDefer
|
public struct ServerReceiveJob : IJobParallelForDefer
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
using Unity.Burst;
|
using Unity.Burst;
|
||||||
using Unity.Jobs;
|
using Unity.Jobs;
|
||||||
|
|
||||||
namespace ECSTest
|
namespace ECSTest.Server
|
||||||
{
|
{
|
||||||
[BurstCompile]
|
[BurstCompile]
|
||||||
public struct ServerSendJob : IJobParallelFor
|
public struct ServerSendJob : IJobParallelFor
|
||||||
|
|||||||
@@ -0,0 +1,10 @@
|
|||||||
|
using GameCore.TinyECS;
|
||||||
|
|
||||||
|
namespace ECSTest.Server
|
||||||
|
{
|
||||||
|
public struct WorldManager
|
||||||
|
{
|
||||||
|
public EntityCollection<EntityType> entities;
|
||||||
|
public EntityDataBlockChain chain;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 34167e4ecf924d05b9abd31eb2b2e464
|
||||||
|
timeCreated: 1765879427
|
||||||
Reference in new issue
Block a user