reckfellENGINE

Time

Календарные данные, системные часы и монотонное измерение интервалов.

На этой странице
class TimeReckfellSharp

Для даты события используйте epoch-секунды, для длительности — разность GetTicksUsec()/GetTicksMsec(). System clock может корректироваться; runtime ticks не являются датой и не переносятся между запусками. Микросекундная единица не обещает микросекундную точность.

Unix-конверсии здесь работают с целыми секундами и не применяют локальную зону. utc у системных методов выбирает UTC или local. bias из GetTimeZoneFromSystem() измеряется в минутах и описывает текущую OS-зону, не историю любой даты.

Строковые методы не заменяют строгий ISO/RFC3339 parser: timezone suffix не преобразуется, дроби теряются, пустой ввод может стать epoch. Dictionary parser не валидирует все календарные диапазоны. Проверяйте ввод до конверсии; значения 0 и −1 сами по себе не доказывают ошибку.

Календарь proleptic Gregorian по исходникам, без исторического пропуска дней; leap seconds не поддержаны. Проверены фиксированные Windows roundtrips, схемы, defaults и ticks. DST-переходы, перестановка часов, предельные даты и другие платформы не выполнялись.

Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.

Свойства1

SingletonСвойство
# Singleton
C#
public static TimeInstance Singleton { get; }

Заимствованный wrapper глобального Time. Повторное получение использует cached wrapper; не Free/Dispose этот сервис. Для обычных вызовов используйте статические методы.

Методы21

GetDateDictFromSystemReckfell.Collections.Dictionary
# GetDateDictFromSystem
C#
public static Reckfell.Collections.Dictionary GetDateDictFromSystem(bool utc = false);

Читает текущую дату OS: year, month, day, weekday. utc=false — локальная зона, true — UTC. Это отдельный снимок системных часов; другие вызовы могут пересечь границу суток. Не содержит hour или dst.

Параметры
ИмяТипПо умолчанию
utcboolfalse
utc

True читает UTC; false (default) — текущую локальную OS-зону. Не параметр конверсионных Unix-методов.

Возвращает Reckfell.Collections.Dictionary

Новый Dictionary указанных полей; Dispose собственный C# wrapper после чтения.

GetDateDictFromUnixTimeReckfell.Collections.Dictionary
# GetDateDictFromUnixTime
C#
public static Reckfell.Collections.Dictionary GetDateDictFromUnixTime(long unixTimeVal);

Преобразует целые Unix-секунды в year/month/day/weekday без локального timezone-сдвига. Month 1…12; weekday 0=воскресенье. Отрицательные секунды допускают даты до epoch. Это не полная дата-время и не изменение настроек OS.

Параметры
ИмяТипПо умолчанию
unixTimeVallong—
unixTimeVal

Целые signed секунды от 1970-01-01T00:00:00, не миллисекунды; локальный offset не применяется.

Возвращает Reckfell.Collections.Dictionary

Новый Dictionary указанных полей; Dispose собственный C# wrapper после чтения.

GetDateStringFromSystemstring
# GetDateStringFromSystem
C#
public static string GetDateStringFromSystem(bool utc = false);

Возвращает дату текущих часов OS в форме YYYY-MM-DD. utc выбирает локальную зону/UTC; строка не содержит offset или названия зоны. Не является локализованным форматом интерфейса пользователя.

Параметры
ИмяТипПо умолчанию
utcboolfalse
utc

True читает UTC; false (default) — текущую локальную OS-зону. Не параметр конверсионных Unix-методов.

Возвращает string

Строка указанного календарного формата без timezone-конвертации и дробей.

GetDateStringFromUnixTimestring
# GetDateStringFromUnixTime
C#
public static string GetDateStringFromUnixTime(long unixTimeVal);

Форматирует целые Unix-секунды как YYYY-MM-DD без применения локальной зоны. Дробную часть принять не может: аргумент long. Для интервала между событиями используйте ticks, а не календарные строки.

Параметры
ИмяТипПо умолчанию
unixTimeVallong—
unixTimeVal

Целые signed секунды от 1970-01-01T00:00:00, не миллисекунды; локальный offset не применяется.

Возвращает string

Строка указанного календарного формата без timezone-конвертации и дробей.

GetDatetimeDictFromDatetimeStringReckfell.Collections.Dictionary
# GetDatetimeDictFromDatetimeString
C#
public static Reckfell.Collections.Dictionary GetDatetimeDictFromDatetimeString(string datetime, bool weekday);

Разбирает компоненты формы YYYY-MM-DDTHH:MM:SS, с пробелом вместо T, только дату или только время. Пропущенные части получают epoch defaults. В C# weekday обязателен и добавляет вычисляемый weekday при true. Это не валидатор: в 1.0.0 метод не проверяет диапазоны календаря/часов и может вернуть недопустимые поля. Валидируйте ввод до вызова, особенно при weekday=true; неверные месяцы с вычислением weekday здесь не исполнялись. Суффиксы offset/Z и дроби не являются полноценной ISO-поддержкой.

Параметры
ИмяТипПо умолчанию
datetimestring—
weekdaybool—
datetime

Предварительно проверенная строка компонентов; не полагайтесь на строгую ISO-валидацию/offset-конверсию.

weekday

True добавляет вычисляемый weekday; сначала обеспечьте валидную дату. Параметр обязателен в C#.

Возвращает Reckfell.Collections.Dictionary

Новый Dictionary указанных полей; Dispose собственный C# wrapper после чтения.

GetDatetimeDictFromSystemReckfell.Collections.Dictionary
# GetDatetimeDictFromSystem
C#
public static Reckfell.Collections.Dictionary GetDatetimeDictFromSystem(bool utc = false);

Читает текущую дату-время OS: year, month, day, weekday, hour, minute, second, dst. UTC выбирается флагом; utc=false локален. dst относится к текущему OS-снимку, а не истории произвольной даты. Системные часы могут корректироваться, поэтому не измеряйте ими elapsed time.

Параметры
ИмяТипПо умолчанию
utcboolfalse
utc

True читает UTC; false (default) — текущую локальную OS-зону. Не параметр конверсионных Unix-методов.

Возвращает Reckfell.Collections.Dictionary

Новый Dictionary указанных полей; Dispose собственный C# wrapper после чтения.

GetDatetimeDictFromUnixTimeReckfell.Collections.Dictionary
# GetDatetimeDictFromUnixTime
C#
public static Reckfell.Collections.Dictionary GetDatetimeDictFromUnixTime(long unixTimeVal);

Преобразует целые epoch-секунды в семь полей year/month/day/weekday/hour/minute/second. Не добавляет dst, offset или миллисекунды и не применяет настройки локальной зоны. Поддерживает проверенные отрицательные и post-2038 timestamps; предельные int64-даты не проверялись.

Параметры
ИмяТипПо умолчанию
unixTimeVallong—
unixTimeVal

Целые signed секунды от 1970-01-01T00:00:00, не миллисекунды; локальный offset не применяется.

Возвращает Reckfell.Collections.Dictionary

Новый Dictionary указанных полей; Dispose собственный C# wrapper после чтения.

GetDatetimeStringFromDatetimeDictstring
# GetDatetimeStringFromDatetimeDict
C#
public static string GetDatetimeStringFromDatetimeDict(Reckfell.Collections.Dictionary datetime, bool useSpace);

Форматирует непустой Dictionary в YYYY-MM-DDTHH:MM:SS или с пробелом. Недостающие year/month/day/hour/minute/second заполняются значениями epoch; лишние weekday/dst/bias не преобразуют зону. Проверяет диапазоны даты/времени, но при ошибке даёт пустую строку с диагностикой, не Error. Валидация неверных полей здесь разобрана по исходникам.

Параметры
ИмяТипПо умолчанию
datetimeReckfell.Collections.Dictionary—
useSpacebool—
datetime

Непустой Dictionary полей year/month/day/hour/minute/second; недостающие поля имеют epoch defaults.

useSpace

True заменяет T пробелом; не меняет дату, зону или точность.

Возвращает string

Строка указанного календарного формата без timezone-конвертации и дробей.

GetDatetimeStringFromSystemstring
# GetDatetimeStringFromSystem
C#
public static string GetDatetimeStringFromSystem(bool utc = false, bool useSpace = false);

Форматирует текущую дату-время OS с точностью полей до целой секунды. utc выбирает зону, useSpace — только разделитель. Строка не содержит Z/offset и не описывает clock monotonicity. Несколько вызовов не являются одним атомарным снимком.

Параметры
ИмяТипПо умолчанию
utcboolfalse
useSpaceboolfalse
utc

True читает UTC; false (default) — текущую локальную OS-зону. Не параметр конверсионных Unix-методов.

useSpace

True заменяет T пробелом; не меняет дату, зону или точность.

Возвращает string

Строка указанного календарного формата без timezone-конвертации и дробей.

GetDatetimeStringFromUnixTimestring
# GetDatetimeStringFromUnixTime
C#
public static string GetDatetimeStringFromUnixTime(long unixTimeVal, bool useSpace = false);

Форматирует целые Unix-секунды без локального сдвига. useSpace меняет T на пробел, не часовой пояс. Строка не включает offset/Z или дробные секунды; не добавляйте произвольный offset без отдельного корректного преобразования.

Параметры
ИмяТипПо умолчанию
unixTimeVallong—
useSpaceboolfalse
unixTimeVal

Целые signed секунды от 1970-01-01T00:00:00, не миллисекунды; локальный offset не применяется.

useSpace

True заменяет T пробелом; не меняет дату, зону или точность.

Возвращает string

Строка указанного календарного формата без timezone-конвертации и дробей.

GetOffsetStringFromOffsetMinutesstring
# GetOffsetStringFromOffsetMinutes
C#
public static string GetOffsetStringFromOffsetMinutes(long offsetMinutes);

Форматирует signed минуты как ±HH:MM: например 330 → +05:30, −210 → −03:30. Не переводит timestamp в другую зону, не выбирает DST и не проверяет существование такого часового пояса. Не передавайте Unix-секунды вместо минут.

Параметры
ИмяТипПо умолчанию
offsetMinuteslong—
offsetMinutes

Signed минуты смещения; 330 соответствует +05:30. Не Unix timestamp.

Возвращает string

Signed offset-строка ±HH:MM без конвертации даты.

GetTicksMseculong
# GetTicksMsec
C#
public static ulong GetTicksMsec();

Монотонный счётчик миллисекунд текущего runtime. Подходит для разности двух показаний; не дата и не epoch. В текущем backend вычисляется усечением microseconds/1000. Не сохраняйте как переносимое время между запусками и не предполагайте точность планировщика в 1 мс.

Возвращает ulong

Неотрицательные runtime-миллисекунды, не epoch.

GetTicksUseculong
# GetTicksUsec
C#
public static ulong GetTicksUsec();

Монотонный счётчик микросекунд от начала текущего runtime. Для elapsed seconds используйте (now−start)/1_000_000.0. Единица измерения не гарантирует физическую точность в 1 мкс. Это не UTC, не масштабируемое Engine.TimeScale игровое время и не общий timestamp разных процессов.

Возвращает ulong

Неотрицательные runtime-микросекунды, не epoch.

GetTimeDictFromSystemReckfell.Collections.Dictionary
# GetTimeDictFromSystem
C#
public static Reckfell.Collections.Dictionary GetTimeDictFromSystem(bool utc = false);

Возвращает hour/minute/second текущих OS-часов. utc=false — локально, true — UTC. Нет даты/offset: одинаковые значения могут относиться к разным дням; не используйте только их как уникальную отметку события.

Параметры
ИмяТипПо умолчанию
utcboolfalse
utc

True читает UTC; false (default) — текущую локальную OS-зону. Не параметр конверсионных Unix-методов.

Возвращает Reckfell.Collections.Dictionary

Новый Dictionary указанных полей; Dispose собственный C# wrapper после чтения.

GetTimeDictFromUnixTimeReckfell.Collections.Dictionary
# GetTimeDictFromUnixTime
C#
public static Reckfell.Collections.Dictionary GetTimeDictFromUnixTime(long unixTimeVal);

Возвращает час, минуту и секунду внутри суток из целого epoch timestamp без timezone-сдвига. Для −1 результат 23:59:59, а не отрицательные компоненты. Дата не входит в результат.

Параметры
ИмяТипПо умолчанию
unixTimeVallong—
unixTimeVal

Целые signed секунды от 1970-01-01T00:00:00, не миллисекунды; локальный offset не применяется.

Возвращает Reckfell.Collections.Dictionary

Новый Dictionary указанных полей; Dispose собственный C# wrapper после чтения.

GetTimeStringFromSystemstring
# GetTimeStringFromSystem
C#
public static string GetTimeStringFromSystem(bool utc = false);

Форматирует текущие OS-часы как HH:MM:SS в выбранной локальной/UTC зоне. Не включает дату, дроби или offset. Не используйте для точного измерения длительности.

Параметры
ИмяТипПо умолчанию
utcboolfalse
utc

True читает UTC; false (default) — текущую локальную OS-зону. Не параметр конверсионных Unix-методов.

Возвращает string

Строка указанного календарного формата без timezone-конвертации и дробей.

GetTimeStringFromUnixTimestring
# GetTimeStringFromUnixTime
C#
public static string GetTimeStringFromUnixTime(long unixTimeVal);

Форматирует часть суток целого Unix timestamp как HH:MM:SS. Не применяет локальную зону и не сохраняет информацию о дне. Это форматирование времени суток, не строка длительности.

Параметры
ИмяТипПо умолчанию
unixTimeVallong—
unixTimeVal

Целые signed секунды от 1970-01-01T00:00:00, не миллисекунды; локальный offset не применяется.

Возвращает string

Строка указанного календарного формата без timezone-конвертации и дробей.

GetTimeZoneFromSystemReckfell.Collections.Dictionary
# GetTimeZoneFromSystem
C#
public static Reckfell.Collections.Dictionary GetTimeZoneFromSystem();

Читает текущие OS-поля bias и name. bias — signed минуты UTC offset; name — OS-название, не гарантированный IANA ID. Windows учитывает текущую стандартную/DST поправку. Это не база исторических зон и не API перевода произвольной даты с DST. В QA зона не менялась; проверена схема результата.

Возвращает Reckfell.Collections.Dictionary

Новый Dictionary указанных полей; Dispose собственный C# wrapper после чтения.

GetUnixTimeFromDatetimeDictlong
# GetUnixTimeFromDatetimeDict
C#
public static long GetUnixTimeFromDatetimeDict(Reckfell.Collections.Dictionary datetime);

Преобразует непустой Dictionary в целые epoch-секунды. Неуказанные основные поля получают epoch defaults; weekday/dst/bias игнорируются как вход конверсии. Локальное время не переводится автоматически в UTC. При ошибке диапазонов или пустом Dictionary native-код возвращает 0 с диагностикой — 0 также нормальный epoch, поэтому это не TryParse.

Параметры
ИмяТипПо умолчанию
datetimeReckfell.Collections.Dictionary—
datetime

Непустой Dictionary полей year/month/day/hour/minute/second; недостающие поля имеют epoch defaults.

Возвращает long

Целые epoch-секунды; 0 неоднозначен между epoch и ошибкой с диагностикой.

GetUnixTimeFromDatetimeStringlong
# GetUnixTimeFromDatetimeString
C#
public static long GetUnixTimeFromDatetimeString(string datetime);

Разбирает поддержанные компоненты и возвращает целые секунды. Не строгий ISO/RFC3339 parser: +03:00 не вычитает 3 часа, дробные секунды не сохраняются, пустая строка в проверке дала 0. Дата без времени даёт полночь; время без даты относится к 1970-01-01. Валидируйте структуру/диапазоны и отдельно обрабатывайте зону. Ошибочные ветви дают −1 либо 0 с диагностикой; оба числа также допустимые timestamps.

Параметры
ИмяТипПо умолчанию
datetimestring—
datetime

Предварительно проверенная строка компонентов; не полагайтесь на строгую ISO-валидацию/offset-конверсию.

Возвращает long

Целые epoch-секунды; −1 и 0 не универсальные error markers.

GetUnixTimeFromSystemdouble
# GetUnixTimeFromSystem
C#
public static double GetUnixTimeFromSystem();

Текущие UTC epoch-секунды системных часов как double, с возможной дробной частью. Не миллисекунды. Часы могут измениться пользователем/OS, поэтому разность не является монотонным измерением. Для измерения длительности используйте ticks; для отображения явно выберите UTC/local. Проверено чтение Windows без изменения часов.

Возвращает double

System UTC epoch seconds как double; может меняться немонотонно.

Time.Month

ЗначениеОписание
April = 4

Месяц апрель, представленный численно как 04.

August = 8

Август месяц, представленный численно как 08.

МЕСТО

December = 12

Декабрь, представленный численно как 12.

February = 2

Месяц февраль, представленный численно как 02.

January = 1

Месяц январь, представленный в числовом виде как 01.

МЕСТО ФЕВРАЛЯ

July = 7

Июль месяц, представленный численно как 07.

June = 6

Июнь, числовой формат которого представлен как 06.

March = 3

Март месяц, представленный численно как 03.

May = 5

Месяц май, представленный численно как 05.

November = 11

Месяц ноябрь, представленный численно как 11.

October = 10

Месяц октябрь, представленный численно как 10.

МЕСТО

September = 9

Сентябрь, представленный численно как 09.

МЕСТО

Time.Weekday

ЗначениеОписание
Friday = 5

День недели пятница, представленный в числовом виде как 5.

Monday = 1

День недели понедельник, представленный в числовом виде как 1.

Неделя в пятницу

Saturday = 6

День недели суббота, представленный в числовом виде как 6.

Sunday = 0

День недели воскресенье, представленный численно как 0.

Thursday = 4

День недели четверг, представленный в числовом виде как 4.

Неделя в пятницу

Tuesday = 2

День недели вторник, представленный в числовом виде как 2.

Неделя

Wednesday = 3

День недели среда, представленный в числовом виде как 3.

Неделя вторник

Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

Вход в аккаунт

Войдите в аккаунт Reckfell.

Один аккаунт для всей платформы Reckfell.